当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JavaScript ArcGIS JobInfo.waitForJobCompletion用法及代码示例


基本信息

以下是所在类或对象的基本信息。

AMD: require(["esri/rest/support/JobInfo"], (JobInfo) => { /* code goes here */ });

ESM: import JobInfo from "@arcgis/core/rest/support/JobInfo";

类: esri/rest/support/JobInfo

继承: JobInfo > Accessor

自从:用于 JavaScript 4.20 的 ArcGIS API

用法说明

JobInfo.waitForJobCompletion函数(或属性)的定义如下:

waitForJobCompletion (options) {Promise<JobInfo>}


在异步作业完成时解析。可以选择监控作业进度。

参数:

规格:
类型说明
options Object
可选的

选项。有关对象规格,请参阅下面的属性。

规格:
interval

Object

可选的
默认值: 1000

远程作业状态请求之间的时间(以毫秒为单位)。

signal

Object

可选的

AbortSignal 允许可取消的异步作业。如果取消,promise 将被拒绝,并出现名为 AbortError 的错误。

statusCallback

Object

可选的

以指定间隔调用的回调函数。使用此方法监控作业状态和消息。

返回:

类型 说明
Promise<JobInfo> 解析后,返回 JobInfo

例子:

// Submit an asynchronous geoprocessing job. Display the remote job status every 1.5 seconds.
// When the job has completed at the output as a MapImageLayer.
const startDate = "1998-01-01 00:00:00";
constendDate = "1998-05-31 00:00:00";
const params = {
  query: "(Date >= date '" + startDate + "' and Date <= date '" + endDate + "')"
};

const url: "https://sampleserver6.arcgisonline.com/arcgis/rest/services/911CallsHotspot/GPServer/911%20Calls%20Hotspot";

submitJob(url, params).then((jobInfo) => {
  const jobid = jobInfo.jobId;

  const options = {
    interval: 1500,
    statusCallback: (j) => {
      console.log("Job Status: ", j.jobStatus);
    }
  };

  jobInfo.waitForJobCompletion(options).then(() => {
    const layer = jobInfo.fetchResultMapImageLayer();
    map.add(layer);
  });
});

相关用法


注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 JobInfo.waitForJobCompletion。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。