Как добавить точку на карте yandex map в Vue 3?

Добрый день существует проблема при добавлении точки на карте если мы используем vue 3 я имею ввиду что если мы делаем инициализацию карты через
data(){
return {
map:null
}
},
methods:{
    initMap() {
       this.map = new ymaps.Map(this.$refs.map, {
        center:this.center,
        controls: [],
        zoom: this.zoom
      });
},
  mounted() {
    this.initMap()

  }

а потом пытаюсь добавить точку на карте через

this.map.geoObjects.add(myPlacemark)
то происходит ошибка
0H-bNDFcYyI.jpg?size=757x171&quality=96&sign=50436dc77e7ca59c9632051ce670a8d6&type=album
если я делаю не через this а, через переменную то ошибки не происходит и все хорошо
let map;
...
initMap() {
       map = new ymaps.Map(this.$refs.map, {
        center:this.center,
        controls: [],
        zoom: this.zoom
      });

, я почему то думаю что тут проблема из за proxy vue3 но как решить данную проблему - не знаю
  • Вопрос задан
  • 57 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Vue.js
думаю что тут проблема из за proxy

Тогда попробуйте получать оригинальный объект и работать уже с ним:

Vue.toRaw(this.map).geoObjects.add(placemark);

Или изначально не делайте его реактивным:

this.map = Vue.markRaw(new ymaps.Map(this.$refs.map, {
  ...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы