我遇到了一个错误,当我在谷歌地图上绘制折线并尝试删除它时,它并没有被删除。我想知道这是否是因为我使用的是 pinia。我该如何处理它导入{
我遇到了一个错误,当我在谷歌地图上绘制折线并尝试删除它时,它并没有被删除。我想知道这是否是因为我使用的是 pinia。我该怎么做
import { defineStore } from 'pinia'
import { ref, watch } from 'vue';
export const useMapStore = defineStore('map', () => {
const mapContainer = ref(null);
const googleMap = ref(null);
const googlePolyline = ref(null)
watch([() => googlePolyline.value ], ([newGooglePolyline],[oldGooglePolyline]) => {
if(oldGooglePolyline){
oldGooglePolyline.setMap(null)
}
if(newGooglePolyline){
newGooglePolyline.setMap(googleMap.value)
}
})
const plotHistory = (locations, currentPosition, pathId = null ) => {
locations = locations.map((position) => {
return { lat: position.latitude, lng: position.longitude }
})
// Draw lines connecting the markers
googlePolyline.value = new google.maps.Polyline({
path: locations,
strokeColor: "#FF0000",
strokeOpacity: 1.0,
strokeWeight: 2,
});
}
const clearPolyline = () => {
if (googlePolyline.value) {
googlePolyline.value = null;
}
}
}
似乎可能会创建多条线路,但我似乎无法确定是否是这种情况。