javascript - 如何标记以编程方式生成的要素图层?

标签 javascript arcgis arcgis-js-api

我是 ESRI ArcGIS API for Javascript 的新手,我正在尝试以编程方式生成要素图层,然后向其添加标注图层。要素层似乎可以工作,但标签层没有提供任何输出(也没有错误)。谁能告诉我我做错了什么?

jsfiddle:http://jsfiddle.net/9X46z/

相关的javascript:

var layerDefinition = {
    "geometryType": "esriGeometryPoint",
    "fields": [
        {
            "name": "__OBJECTID",
            "alias": "__OBJECTID",
            "type": "esriFieldTypeOID",
        }, {
            "name": "testfield",
            "alias": "testfield",
            "type": "esriFieldTypeString"
        }
    ]
}

var featureCollection = {
    layerDefinition: layerDefinition,
    featureSet: null
};

var fl = new FeatureLayer(featureCollection, {
    id: "featurelayer",
    outFields: ["testfield"]
})

var m = new esri.Graphic(new esri.geometry.Point(-77, 40), pushpin);
m.attributes = {
    "testfield": "test value"
};

fl.add(m);

map.addLayer(fl);

// create a text symbol to define the style of labels
var testLabel = new TextSymbol().setColor(new Color("#666666"));
testLabel.font.setSize("14pt");
testLabel.font.setFamily("arial");
testLabelRenderer = new SimpleRenderer(testLabel);

var labels = new LabelLayer({
    id: "labels"
});
labels.addFeatureLayer(fl, testLabelRenderer, "{testfield}");
// add the label layer to the map
map.addLayer(labels);

最佳答案

这是一个更新后的版本,有一处改动:http://jsfiddle.net/2WccC/1/

var m = new esri.Graphic(new esri.geometry.Point(-77, 40), pushpin);

var m = new esri.Graphic(esri.geometry.geographicToWebMercator(new esri.geometry.Point(-77, 40)), pushpin);

关于javascript - 如何标记以编程方式生成的要素图层?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24803944/

相关文章:

javascript - 当我们的设备从纵向模式转向横向模式时, map 完全加载时是否会触发任何 map 事件?

javascript - 如何使用 dojo/store/JsonRest 工作 ArcGIS Rest Service

javascript - 将arcgis js api弹出单击事件更改为右键单击

javascript - ArcGIS JavaScript API 3.9 - 鼠标拖动事件在 Internet Explorer 11 中不起作用

javascript - 退格键激活 li 类 jquery

javascript 验证 - Javascript 未运行

javascript - jquery show hide 不能正常工作

android - UnsatisfiedLinkError Arcgis 10.2.3 Android ArcGISRuntime.setClientId

javascript - 在 For 循环中将所有 JSON 数据加载到标记层时遇到问题

javascript - 选择 select bootstrap 在 bootstrap 模式中显示两次