will be removed in Nuxt 3. переписал в store свои модули:
/store/modules/user.js
export default () => {
return {}
}
export const mutations = {}
export const actions = {}
в store/index.js подключаю
import user from './modules/user'
const store = () => {
return new Vuex.Store({
strict : process.env.NODE_ENV !== 'production',
modules : {
user,
},
})
}
и понятно дело что теперь доступен мне только state от user, но как подключить actions , чтоб в компонентах иметь доступ к ним?
Доку не читал по vuex? Как обращаться к модулям, к их геттерам и экшенам? Как указывать явно namespace модуля?
Читал, но может я не догоняю разницу между где там экспортится весь модуль и вариантом от nuxt, где экспортится все отдельно
0) в default ты экспортишь пустой объект 1) у модуля для определения namespace надо указывать в экспорте namespaced: true 2) вызов dispatch('users/actionName', payload), getters['users/getterName']
1) в каком из экспортов? у меня state, actions, mutations раздельно экспортится
не понял как, но спасибо., буду разбираться
/store/users.js: export const actions = { do (ctx, payload){ // something } } export default { namespaced: true, actions, mutations, getters, state } $store.dispatch('users/do', payload)
Обсуждают сегодня