单张没有样式的图层

时间:2016-01-20 22:51:46

标签: javascript leaflet

我正在尝试设置从服务器获取的图层的样式,但是layer.setStyle()函数没有做任何事情,并且在创建图层时定义样式也不起作用,我的代码是这样的:

var stateStyle = {
    "color": "#3D5229",
    "weight": 1,
    "opacity": .90,
    "fillOpacity": .90
}; 

  var mywms2 = L.tileLayer.wms("http://someserver/geoserver/somepage/wms", {
    layers: 'SomeMaps:view_table_geom',
    format: 'image/png',
    transparent: true,
     style:  stateStyle , //not working
    version: '1.1.0'

});

//not working either

mywms2.setStyle(stateStyle);

有什么问题?这应该不是问题。

我让我是plunker但由于某种原因它没有显示地图,但如果你复制粘贴代码到html代码,你可以看到我的问题是什么。 https://plnkr.co/edit/38VVojm8zLKhdXu10nQC?p=preview

1 个答案:

答案 0 :(得分:1)

Leaflet的L.Tilelayer.WMS选项对象没有style选项。但它确实支持styles选项,但它不会将javascript对象文字作为值,而是以逗号分隔的值字符串:

  

以逗号分隔的WMS样式列表。

http://leafletjs.com/reference.html#tilelayer-wms-styles

关于Leaflet和WMS造型的一个很好的解释可以在Per Liedman的答案中找到:

https://stackoverflow.com/a/23012106/2019281