正如标题所示,我想设置存储在GeoJSON文件中的一些标记。在每个功能中,我根据我想要旋转标记的方式保存了一个"旋转":some_integer。
在Mapbox的stylejson中,我为标记编写了以下样式:
{
"id": "markers_test",
"type": "symbol",
"source": "markers_test",
"layout": {
"symbol-placement": "point",
"icon-image": "marker_{style_id}",
"icon-rotate": "{rotate}",
"text-field": "{name}",
"text-font": ["Open Sans Semibold"],
"text-anchor": "top-left",
"text-padding": 20,
"text-size": 10,
"text-optional": true
},
"paint": {
"text-color": "#dddddd",
"text-halo-color": "#0000ff",
"text-halo-width": 1,
"text-halo-blur": 1
}
}
设置正确的名称和图标可以完美地运行,但是一旦我尝试设置旋转,它就会崩溃,说值应该是数字,而不是字符串。仅 - 我如何引用字符串外部要素的属性?
答案 0 :(得分:1)
{token}
语法仅适用于text-field
和icon-image
。对于所有其他属性,您必须使用property function syntax。
{
"id": "markers_test",
"type": "symbol",
"source": "markers_test",
"layout": {
"symbol-placement": "point",
"icon-image": "marker_{style_id}",
"icon-rotate": {
"property": "rotate",
"stops": [[0, 0], [365, 365]]
},
"text-field": "{name}",
"text-font": ["Open Sans Semibold"],
"text-anchor": "top-left",
"text-padding": 20,
"text-size": 10,
"text-optional": true
},
"paint": {
"text-color": "#dddddd",
"text-halo-color": "#0000ff",
"text-halo-width": 1,
"text-halo-blur": 1
}
}