【发布时间】:2019-01-16 11:19:38
【问题描述】:
我正在尝试将令牌设置为我的 store.token 我知道这不是不使用突变的最佳选择,但我正在做这样的事情:
methods : {
molestor(){
const self = this;
this.$store.state.token = "new token";
this.$store.state.cleavage= "yes";
this.$store.commit('settoken', "somethingrandom");
},
}
然后在我的 store.js 上:
export const store = new Vuex.Store({
state : {
token : '',
},
mutations : {
settoken(state,token){
console.log(token);
}
}
});
现在它工作正常......它设置。但是当我从store.js 中删除突变或删除我的molester() 上的提交时,它不会将值分配给令牌。为什么会这样?
【问题讨论】:
-
真的不一样。我没有收到任何错误。问题是我不需要
commit一个可以设置我价值的突变。我没有用突变设置我的商店数据。我正在做正常的方式。当我删除没有做任何事情的突变时,我无法设置存储值。 @AnaLizaPandac 这就是为什么我首先说奇怪。感谢您的帮助 -
你不应该那样做:这不是 VueX 应该如何工作的,你设法让它工作可能只是一个怪癖,并且不能保证它会在所有情况下都工作时间。就像它的名字所暗示的那样,坚持使用突变来改变你的 VueX 商店中的状态。
标签: vue.js vuejs2 vuex vue-router