ArcGIS API for JS4.8 客户端生成的FeatureLayer查询

       FeatureLayer总体上可分为两类,一类是由ArcGIS Server发布的服务构建的FeatureLayer;另一类是由客户端json、graphics等构建的FeatureLayer。

       对第一类FeatureLayer进行查询时,通过FeatureLayer.queryFeatures()方法即可完成,详细的查询方式在官网的demo和API里都有。

      对第二类FeatureLayer进行查询时,只能通过FeatureLayer在渲染时生成的FeatureLayerView进行查询,而且不是可以对任意属性进行查询的,只能对geometry、spatialRelationship、objectIds进行查询。

 获取FeaturelayerView的方法:

 view.whenLayerView(villageLayer).then(function(layerView){
        featureLayerView=layerView;        
      });

查询的方式:

      var query=new Query();
      query.objectIds=[1,2];
      query.geometry=graphic.geometry.extent;
      query.spatialRelationship = "intersects";
     
      featureLayerView.queryFeatures(query).then(function(results){
        console.log(results)
      })

       其实这里有个很大的坑,就是如果你查询设置错误了,ArcGIS API for JS是不会报错的,只会直接跳过查询后的回调,所以调试起来是很不方便的。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GIS开发者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值