Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Vue.js связать два компонента

Павел Полищук Профи (859), на голосовании 8 месяцев назад
Здравия, кодеры. Есть у меня два элемента во vue.js абсолютно независимых друг от друга. В одном из них есть переменная с boolean значением, которую мне необходимо передать во второй (да ещё и постоянно мониторить её состояние). Я не могу найти и понять, как это можно корректно сделать. Помогите разобраться, кто шарит

P.s.То что в mounted — это я пытался в интернете найти какие-то методы решения проблемы
Голосование за лучший ответ
Metotron Искусственный Интеллект (114907) 9 месяцев назад
Использовать стор: vuex/pinia

Если хочется покостылить, можно использовать sessionStorage. Когда он меняется, то window получает событие store, если не ошибаюсь, можно сделать window.addEventListener('store') и так реагировать на изменения.

Оба компонента вставлены в одного родителя или как они используются? В Vue3 можно сделать provide для переменной, потом в компонентах сделать watch инжектированных переменных. Vue2 умеет делать provide только функций, и там переменную нужно прокидывать из родителя в пропсы потомков. Собственно, так можно и синхронизировать их: делать $emit нового значения, в родителе принимать новое значение и через пропсы слать обратно.
Похожие вопросы