下載依賴
cnpm i -S ol
創建地圖文件
<div class="map"></div>
<script>
import Map from "ol/Map";
import View from "ol/View";
import TileLayer from "ol/layer/Tile";
import XYZ from "ol/source/XYZ";
import TileWMS from "ol/source/TileWMS.js";
import { fromLonLat } from "ol/proj.js";
export default {
data() {
return {
map: null,
urlRoot: "http://193.112.110.27:8080/geoserver/gee/wms?",
};
},
mounted() {
this.init();
},
methods: {
init() {
var center = fromLonLat([101.34272, 23.6042484]);
this.layers = [
new TileLayer({
source: new TileWMS({
url: this.urlRoot,
params: { LAYERS: "fangchenggang:other_sea" },
serverType: "geoserver",
zIndex: 2
})
}),
new TileLayer({
source: new TileWMS({
url: this.urlRoot,
params: { LAYERS: "fangchenggang:realm" },
serverType: "geoserver"
}),
zIndex: 3
}),
new TileLayer({
source: new TileWMS({
url: this.urlRoot,
params: { LAYERS: "fangchenggang:stockpile" },
serverType: "geoserver"
}),
zIndex: 3
}),
new TileLayer({
source: new TileWMS({
url: this.urlRoot,
params: { LAYERS: "fangchenggang:road" },
serverType: "geoserver"
}),
zIndex: 3
}),
new TileLayer({
source: new TileWMS({
url: this.urlRoot,
params: { LAYERS: "fangchenggang:railway" },
serverType: "geoserver"
}),
zIndex: 3
}),
new TileLayer({
source: new TileWMS({
url: this.urlRoot,
params: { LAYERS: "cesium:storage_yard" },
serverType: "geoserver"
}),
zIndex: 3
})
];
this.map = new Map({
target: "map",
layers: [
new TileLayer({
source: new XYZ({
url: "https://{a-c}.tile.openstreetmap.org/{z}/{x}/{y}.png"
}),
zIndex: 1
})],
view: new View({
projection: "EPSG:3857",
center: center,
zoom: 2,
maxZoom: 18,
minZoom: 13
}),
logo: false
});
this.map.addLayer(layers);
}
}
};
</script>
其他API
this.map.removeLayer(layer);
this.layers.road.setOpacity(0)