只需要commit 地图id和地图实例就可以,state不用写,会自动生成,
用vuex存储地图,然后用的时候用computed直接计算map最终结果,这样使用的好处是,地图永远是加载好的,不会找不到地图,随时都可以使用
// 初始化地图
INIT_MAP (state, data) {
const { mapId, map } = data
if (Object.hasOwnProperty.call(state, mapId)) {
console.log('vuex的map',mapId,map)
state[mapId] = map
} else {
// 初始化地图实例
console.log('vuex的map',mapId,map)
Vue.set(state, [mapId], map)
}
},
// 销毁地图
DESTROY_MAP (state, mapId) {
state[mapId] && state[mapId].remove()
state[mapId] = null
}
贴个群号
WebGIS学习交流群461555818,欢迎大家。