Режим модульности - modules mode

Modules mode

Nuxt.js позволяет использовать каждый файл в директории store как отдельный модуль хранилища.

Если выбран режим модульности, экспортируйте в store/file.js состояние(state), мутации(mutations) и действия(actions), а не экземпляр хранилища:

export const state = () => ({
  counter: 0
})

export const mutations = {
  increment (state) {
    state.counter++
  }
}

Предположим, у нас есть модуль store/todos.js:

export const state = () => ({
  list: []
})

export const mutations = {
  add (state, text) {
    state.list.push({
      text,
      done: false
    })
  },
  remove (state, { todo }) {
    state.list.splice(state.list.indexOf(todo), 1)
  },
  toggle (state, todo) {
    todo.done = !todo.done
  }
}

И в pages/todos.vue мы используем модуль todos:

Метод модуля также работает для определений верхнего уровня без реализации подкаталога в каталоге магазина.

Last updated

Was this helpful?