如何根据字段值

时间:2016-02-11 13:55:46

标签: spring-roo legend-properties gvnix

我有一张包含某些功能的地图,但我想依靠al field来制作它们。

可能是

if [fieldname] = 0 - > color = RED 别的 - > color = blue

有人能说明从哪里开始吗?

在传单文档中搜索我设法编程

function getColor(d) {
    return d = 0 ? '#3182bd' :
           d = 1 ? '#31a354' :
                    '#FFEDA0';
}

function style(feature) {
return {
        fillColor: getColor(feature.properties.*fieldname*),
    };

}

但是我不确定如何对它进行整数,如果我在路上或那里使用gvnix更容易

谢谢大家 哈维尔

1 个答案:

答案 0 :(得分:0)

在gvNIX视图中,您可以使用entity-field tagx 的属性fnAjustRender自定义用于绘制几何图形的符号。使用此方法,您必须在 .jspx 页面中声明script并在属性中注册它。

例如,在show.jspx entity fied definition中您应该更改:

....
<layer:entity-field clusterize="false" 
        fnAjustRender="myJSFunction"   .... z="user-managed"/>
....

然后在 jspx 中创建myJSFunction,如下所示:

<script>
  function myJSFunction(gvmap, layerId, fieldName, 
       featurePk, leafletLayer, featureData, isSelected) {

      var iconColor = "white";
      if (featureData.propName == 1) {
        iconColor = "red";
      } else {
        iconColor = "blue";
      }
      var iconMarker = L.AwesomeMarkers.icon({
                "icon" : icon,
                "prefix" : prefix,
                "markerColor" : markerColor,
                "iconColor" : iconColor
            });
       leafletLayer.setIcon(iconMarker);
       return leafletLayer;
  }

</script>

警告:没有经过测试的代码

祝你好运!