Я хочу добавить класс menu-opened
к тегу body
, когда я нажимаю на div меню Burger.
Мой div
<div v-on:click="openMenu"></div>
Метод openMenu
methods: {
openMenu() {
console.log('open menu launch')
this.$store.dispatch('menu/setMenu', true)
}
}
Мой магазин
state = {
isMenuOpen: false
}
actions = {
setMenu({ commit }, value) {
commit('SET_MENU_OPEN_STATUS', value)
}
}
mutations= {
SET_MENU_OPEN_STATUS(state, newState){
state.isMenuOpen = newState
}
}
В моем шаблоне я получил этот код для добавления класса в тело в зависимости от состояния значения isMenuOpen:
export default {
data() {
return {
menuState: this.$store.state.isMenuOpen
}
},
head () {
return {
bodyAttrs: {
class: this.menuState ? 'menu-opened' : ''
}
}
}
}
Мой магазин работает хорошо, значение изменяется, когда я нажимаю на мой div, но оно не добавляет класс, как если бы функция head не реагировала ...
Спасибо за вашу помощь