我正在修改hacker-news example并且我添加了通知组件(如果获取外部数据出错:在用户读取并点击X将其从vuex状态中删除后,在vuex中保存通知错误)。看起来像这样:
[NOTIFY] (state, message) {
state.data.push(message)
},
[READ_NOTIFICATION] (state, index) {
state.data.splice(index, 1)
}
问题:当正在获取数据并且正在服务器上设置状态时,它会永远保持全局状态中的错误,这意味着如果我打开新浏览器,我将从上一个会话中得到相同的旧错误。
每个请求都不应该重置服务器端vuex状态吗?我错过了什么?
答案 0 :(得分:-1)
我对服务器端状态"的含义感到困惑。 Vuex是一家客户端商店。什么以及为什么要将状态保存到服务器?
此外,我不知道你在用代码做什么?那是在store.js文件中吗?在突变对象?
您需要将其包装在类似的vue方法中:
在Vue文件中:
methods: {
clicksButton (idx) {
this.$store.commit('read_notification', idx)
}
}
在store.js文件中:
const store = new Vuex.Store({
state: {
data: [],
error: null
},
mutations: {
read_notification (state, idx) {
state.data.splice(idx, 1)
}
}
}