Всем привет. Хочу сделать ночную тему на сайте. Для этого создал компонент BackgroundChange.vue, в котором создаю метод, который будет менять фон сайт и фон некоторых блоков.
Смотрите на моя структуру:
Компонент BackgroundChange подключаю в компоненте Navbar, а компонент Navbar подключаю в родительском компоненте App. В родительском компоненте подключен компонент Header, к примеру в компоненте Header к div.header добавляю атрибут v-bind:class="{backgroundChange: isActive}", isActive = false.
Как из компонента BackgroundChange изменить isActive на true? И так все остальные компоненты. Что предложите?
Или есть другое решение? Подскажите.
1) vuex
2) делаете глобальный event bus, в bcgchanger тригаете изменения, а в каждом компоненте их слушаете, и в случае изменения своих свойств, сохраняем их в своем компоненте (а там реактивность и все дела).