我有一个<div id="map" />
我有一个挂载的方法,用于初始化地图。
mounted(){
this.map = L.map(this.mapId,{ preferCanvas: true }).setView(
[this.initialLatitudeOriginalPoint,this.intiialLongitudeOriginalPoint],3
)
L.tileLayer(
tileconfig + '?access_token=' + key
{ maxzoom: 25,id: 'mapbox.streets' }
).addTo(this.map)
}
我有一个叫做标记的道具。我有一个立即为真的观察者
markers:{
handler(newVal,oldVal){
this.showMarkers()
},immediate: true
},
问题-似乎首先呼叫watcher
。安装之前。然后showMarkers
函数将引发错误,因为将不会定义映射,因为watcher
在mounted
之前排在第一位。我真的需要那个观察员立即采取行动。我有什么办法知道,在未定义map之前,观察者应该等待吗?
我的想法:我考虑使用nextTick
。但我对此一无所知。如果我在观察者的处理函数中编写this。$ nextTick,那么何时调用nextTick回调? dom在此特定组件或什至是父母的父母中更新之后?如果它不在乎当前组件,那么在我的情况下,nextTick可能有点错误。我只想了解有关nextTick的最后一件事。有任何线索吗?