VUEX存储库中有以下代码:
export const state = () => ({
z: 'sdfjkhskldjfhjskjdhfksjdhf',
});
export const mutations = {
init_data_for_firmenistorie2 (state, uploadDbFirmenistorieData){
state.z = uploadDbFirmenistorieData;
},
};
async nuxtServerInit ({commit}) {
console.log('111');
commit('init_data_for_firmenistorie2', 123)
}
}
我的问题是:
如何调用nuxtServerInit以便可以使用它重写状态z的值?
附言现在我的代码无法正常工作。
答案 0 :(得分:1)
如果您的store/index.js
有一个动作nuxtServerInit
,则Nuxt
将调用它。
所以您的代码最终看起来像
export const state = () => ({
z: 'sdfjkhskldjfhjskjdhfksjdhf',
});
export const mutations = {
init_data_for_firmenistorie2(state, uploadDbFirmenistorieData) {
state.z = uploadDbFirmenistorieData;
},
};
export const actions = {
nuxtServerInit({ commit }) {
console.log('111');
commit('init_data_for_firmenistorie2', 123);
},
};
答案 1 :(得分:0)
好,您创建一个动作对象,然后将nuxtServerInit
放在其中:
export const actions = {
nuxtServerInit(vuexContext, context){
vuexContext.commit('init_data_for_firmenistorie2', 123);
}
}
使用context
,您可以另外访问params
,routes
,redirect
等。
文档:https://nuxtjs.org/api/context