<template>
<div>
<div id="mapDiv"></div>
<button id="btn" @click="btnHandle">切换地图样式</button>
</div>
</template>
<script>
//通过修改STYLES属性,进而修改地图服务样式
import Map from 'ol/Map.js';
import View from 'ol/View.js';
import TileLayer from 'ol/layer/Tile.js';
import TileWMS from 'ol/source/TileWMS.js';
export default {
name: "TestOL",
data(){
return{
tileWMSSource:''
}
},
mounted:function(){
this.tileWMSSource = new TileWMS({
url: 'http://localhost:8080/geoserver/wzf/wms',
params: {
'LAYERS': 'wzf:wafangdianshi_0',
'TILED': true,
'STYLES':'wfds_style_GB2312' //设置初次显示时的样式
},
serverType: 'geoserver',
projection: "EPSG:4326"
});
var tileLayer = new TileLayer({
source: this.tileWMSSource,
})
var map = new Map({
layers: [tileLayer],
target: 'mapDiv',
view: new View({
center: [122, 40],
zoom: 9,
projection:"EPSG:4326" //默认的是 'EPSG:3857'横轴墨卡托投影
})
});
},
methods:{
//点击按钮,切换地图样式(已经在Geroserver中存在的style,可以是sld或css)
btnHandle:function(){
this.tileWMSSource.updateParams({
'STYLES':this.tileWMSSource.getParams().STYLES == 'CSS_Styleing1' ? 'wfds_style_GB2312':'CSS_Styleing1'
});
}
}
}
</script>
<style scoped>
#mapDiv{
width:1000px;
height:700px;
border:1px solid #ff0000;
}
</style>
OpenLayers5通过改变STYLES属性的方式改变地图服务的样式
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...