欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Arcgis API for JavaScript学习笔记之Task(任务)的实例

程序员文章站 2023-11-07 13:16:22
task(任务): 比如我们在日常生活中,要在 word 做一个打印的操作,这个打印操作就是一个task。在做打印的时候,我们首先要有打印机,这个是肯定的,然后在打印的时候,我们要设置打印的参数,比...

task(任务):

比如我们在日常生活中,要在 word 做一个打印的操作,这个打印操作就是一个task。在做打印的时候,我们首先要有打印机,这个是肯定的,然后在打印的时候,我们要设置打印的参数,比如纸张的大小,打印的份数,是否彩色打印等等,将参数设置完毕后,打印机将按照这些参数进行打印,最后我们从打印机中获取要门所要打印的文档。

如果将这个过程抽象出来,我们可以抽象为这三个部分:打印机,参数,执行结果,其中打印机是执行对象,它是根据设置的打印参数来执行,最后给出我们一个反馈结果。

在 arcgis api for javascript 中的任务跟这个过程类似,不同的任务都会有一个执行对象,还有一个对象的参数设置对象,执行对象在整个执行过程还可能返回一些状态信息,在执行结束后将告诉我们这个任务是否执行成功,如果成功的话,那么我们就可以得到结果了,失败的话,可以通过检查任务失败的错误提示信息进行检查。

通过上面的介绍,我们可以得出一个任务操作所需要的步骤:

1、 实例化一个执行对象;

2、 设置执行对象的参数对象;

3、 设置执行成功和失败的处理函数,这两个函数的本质其实就是回调函数,执行对象分别有运行失败和成功的事件,当这两个事件被触发,自动回调相应的函数,并传入相关信息;

4、 如果失败,根据错误信息,对程序进行排错处理;

5、 如果成功,从返回结果中得到我们想要的信息。

查询任务:

1.class: querytask

executes a query operation on a layer resource of a map service exposed by the arcgis server rest api.//进行空间和属性查询的类,输入服务图层url和query参数。querytask 以 query 为执行参数,空间查询和属性查询的设置都是在 query 对象上进行,querytask 的过滤条件除了属性过滤,同时还支持空间过滤。

querytask.execute(parameters, callback, errback)//执行查询

class: query

query for input to thequerytask. not all query properties are required to execute a querytask. the query definition requires one of the following properties: querygeometry, text, or where. optional properties includeoutfields,outspatialreference, andreturngeometry.//是querytask的执行参数

2.class: findtask

search a map service exposed by the arcgis server rest api based on a string value. the search can be conducted on a single field of a single layer, on many fields of a layer, or on many fields of many layers.//findtask 是在某个地图服务中进行属性查询的功能类,findtask 以 findparameters 对象作为参数,能查询同一个地图服务的一个或者多个图层,并且可以在多个字段中进行查询,findtask 仅仅用于属性信息的查询

class: findparameters

this data object is used as the findparameters argument to findtask.execute method. it specifies the search criteria for a find operation.

3.class: identifytask

identifytask 以 identifyparameters 对象作为参数,能查询同一个地图服务的一个或者多个图层, identifytask 仅仅用于空间信息查询。

class: identifyparameters

this data object is used as the identifyparameters argument to identifytask.execute method. it specifies the criteria used to identify the features.