Size: a a a

Vue.js Russian Developers Community

2020 June 11

🦁

🦁 in Vue.js Russian Developers Community
Дима
this.$refs не обращается к твоему id
+
источник

Д

Дима in Vue.js Russian Developers Community
Хочешь что-то взять с него, обратись как дефолтный джаваскриптизер, а не как вуерист.
источник

YR

Yerlan Rakhimberdino... in Vue.js Russian Developers Community
🦁
this.$refs.map.mapObject - тут твои элементы карты, если на самой карте ты делал <myMap ref='map'>...</myMap>

ref'ы указывают в атрибутах компонента
<l-map ref='osm_map>
  <l-marker ref='name_ref'/>
</l-map>

Мне надо обратиться к l-marker
источник

E

Elizabeth in Vue.js Russian Developers Community
Дима
Vue это надстройка над JS, ты в одной функции создаешь переменную, и в этой же функции пытаешься к ней обратиться из другого контекста. Оно ругается на то что ты обьясвил id, но нигде его не заюзал
Вью это фреймворк да
источник

YR

Yerlan Rakhimberdino... in Vue.js Russian Developers Community
Yerlan Rakhimberdinov
<l-map ref='osm_map>
  <l-marker ref='name_ref'/>
</l-map>

Мне надо обратиться к l-marker
L-marker через v-for генерируются, для каждого ref='${item.key}'
источник

АМ

Алексей Магнер... in Vue.js Russian Developers Community
Yerlan Rakhimberdinov
<l-map ref='osm_map>
  <l-marker ref='name_ref'/>
</l-map>

Мне надо обратиться к l-marker
объясни строчку с таймаутом, что там за дичь происходит у тебя?
источник

АМ

Алексей Магнер... in Vue.js Russian Developers Community
Yerlan Rakhimberdinov
L-marker через v-for генерируются, для каждого ref='${item.key}'
Про v-bind читал?
Вместо ref='${item.key}' пиши :ref='item.key'
источник

YR

Yerlan Rakhimberdino... in Vue.js Russian Developers Community
Алексей Магнер
Про v-bind читал?
Вместо ref='${item.key}' пиши :ref='item.key'
Пардон, : стоит, тут не приписал
источник

АМ

Алексей Магнер... in Vue.js Russian Developers Community
Yerlan Rakhimberdinov
Пардон, : стоит, тут не приписал
Вроде, примерно понял чего ты хотел...
попробуй _this.$refs[data.key].mapObject
источник

YR

Yerlan Rakhimberdino... in Vue.js Russian Developers Community
Ребят извиняюсь, может не так объяснил.
В тимплейте l-marker генерируются через v-for.
У каждого l-marker свой refs.
Так же у каждого l-marker есть свой попап (l-popup). Мне необходимо открыть этот попап через ref его маркера.
В mounted эта функция открывания, но данные с названием REF приходят через шину с другого компонента
источник

YR

Yerlan Rakhimberdino... in Vue.js Russian Developers Community
источник

АМ

Алексей Магнер... in Vue.js Russian Developers Community
решение через шину вообще очень плохое. В 3 версии уже не будет так работать. Мне кажется стоит просто логику пересмотреть.
И почему ты в компонент попапа просто не можешь передавать при клике текущий id своего l-marker? Зачем шина?
источник

СБ

Станислав Барейша... in Vue.js Russian Developers Community
Всем привет, есть код
   socket.onmessage = function(event) {
       var data = JSON.parse(event.data);
       console.log('Пришло сообщение из сокетов);

   };

 module.exports = {

methods: {

           refreshReisDriverTest: function() {
               alert('Обновление из JS')
           },

Как обратиться к refreshReisDriverTest из JS ?
источник

СБ

Станислав Барейша... in Vue.js Russian Developers Community
Ранее я делал так  document.querySelector('.refreshReisDriver').click();
Находил кнопку и совершал клик по ней, а кнопка в свою очередь обрабатывала эту функцию
источник

СБ

Станислав Барейша... in Vue.js Russian Developers Community
Думаю можно же по другому сделать, напрямую обратиться к функции ?
источник

АМ

Алексей Магнер... in Vue.js Russian Developers Community
Станислав Барейша
Думаю можно же по другому сделать, напрямую обратиться к функции ?
Много компонентов используют эту функцию?
источник

YR

Yerlan Rakhimberdino... in Vue.js Russian Developers Community
Алексей Магнер
решение через шину вообще очень плохое. В 3 версии уже не будет так работать. Мне кажется стоит просто логику пересмотреть.
И почему ты в компонент попапа просто не можешь передавать при клике текущий id своего l-marker? Зачем шина?
Да, структура все таки калл) Посижу еще подумаю как лучше без шины сделать) Спасибо
источник

СБ

Станислав Барейша... in Vue.js Russian Developers Community
Алексей Магнер
Много компонентов используют эту функцию?
Только текущий
источник

EM

Elon Musk in Vue.js Russian Developers Community
Народ, подскажите, имею проблему. У меня есть таймер/счетчик который считает сколько времени прошло с момента нажатия на кнопку + висят сокеты. Когда вкладка не активна время начинает отставать а сокеты просто напросто закрываются. Как можно избежать этих проблем не прибегая к лайфхакам типа воспроизведения пустого аудио файла в фоне?
источник

АМ

Алексей Магнер... in Vue.js Russian Developers Community
Станислав Барейша
Только текущий
Тогда зачем экспорт модуля, если можно непосредственно в компоненте указать этот метод и обращаться к нему через this
источник