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


JavaScript ArcGIS FeatureLayer.dynamicDataSource用法及代码示例


基本信息

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

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

ESM: import FeatureLayer from "@arcgis/core/layers/FeatureLayer";

类: esri/layers/FeatureLayer

继承: FeatureLayer > Layer > Accessor

自从:用于 JavaScript 4.0 的 ArcGIS API

用法说明

FeatureLayer.dynamicDataSource函数(或属性)的定义如下:

dynamicDataSource DynamicMapLayer | DynamicDataLayer


自从:ArcGIS 适用于 JavaScript 4.7 的 API

允许您使用来自Map服务子图层的数据或来自已注册工作空间的数据创建动态图层的对象。请参阅DynamicMapLayer,了解从Map服务图层创建动态图层以进行动态渲染、标记和过滤(定义表达式)。要从已注册工作空间(例如表和表连接)中的其他源创建动态图层,请参阅DynamicDataLayer

如果您已经有一个Sublayer 实例,您可以在子图层上调用createFeatureLayer() 方法为您构建图层。

这仅适用于启用了dynamic layers 的Map服务。

例子:

const layer = new FeatureLayer({
  url: "https://sampleserver6.arcgisonline.com/arcgis/rest/services/AGP/Census/MapServer",
  title: "United States Population",
  popupTemplate: {
    title: "{states.STATE_NAME}",
    content: "{expression/per_ancestry}% of the {states.POP2007} people in {states.STATE_NAME} have "
      + "Norwegian ancestry.",
    expressionInfos: [{
      name: "per_ancestry",
      expression: "Round( ( $feature['ancestry.norwegian'] / $feature['states.POP2007'] ) * 100, 1)"
    }],
    fieldInfos: [{
      fieldName: "states.POP2007",
      format: {
        digitSeparator: true,
        places: 0
      }
    }]
  },
  dynamicDataSource: {
    type: "data-layer",
    dataSource: {
      type: "join-table",
      leftTableSource: {
        type: "map-layer",
        mapLayerId: 3
      },
      rightTableSource: {
        type: "data-layer",
        dataSource: {
          type: "table",
          workspaceId: "CensusFileGDBWorkspaceID",
          dataSourceName: "ancestry"
        }
      },
      leftTableKey: "STATE_NAME",
      rightTableKey: "State",
      joinType: "left-outer-join"
    }
  }
});

相关用法


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