关键词搜索

源码搜索 ×
×

arcgis for jsapi中图层数据的主键

发布2019-03-13浏览538次

详情内容

从地图服务里拿到的图层数据,每条记录都有一个主键,名曰“ObjectID”。

也可以用代码构建图层,比如FeatureLayer。其中可以指定,主键不一定要叫“ObjectID”,叫什么名字都可以,自己随便起。只要数据类型为type: "esriFieldTypeOID"。主键的值是系统自动加的,且为自增。注意如果有外部数据源赋给该图层的graphic对象,主键名不要跟其中的字段名相同,否则该字段的值会被覆盖,变成自增。

上代码:

var fl = (function(){//得到一个构造的FeatureLayer
	var layerDefinition = {
		"geometryType": "esriGeometryPoint",
		"fields": [{
			"name": "OBJECTID",
			"type": "esriFieldTypeOID",
			"alias": "OBJECTID"
		}]
	};
	var featureCollection = {
		layerDefinition: layerDefinition,
		featureSet: null
	};
	var fl = new FeatureLayer(featureCollection, {
		id: "ship_fl",
		mode: FeatureLayer.MODE_SNAPSHOT,
		outFields: ["*"],
		opacity: 1,
	});
	
	map.addLayer(fl);
	
	return fl;
})();

function setTip(json){//给graphic对象赋值
	var g = new Graphic(point, symbol);
	var st = "";
	for (var a in json) {
	  g.attr(a, json[a]);//设置属性
	  st += a + ": " + json[a] + "<br/>";
	}
	g.infoTemplate = new InfoTemplate("信息", st);
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34

相关技术文章

点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载