Vuex - 共享服务器端状态?

时间:2017-09-11 16:16:16

标签: vue.js vuejs2 vuex

我正在修改hacker-news example并且我添加了通知组件(如果获取外部数据出错:在用户读取并点击X将其从vuex状态中删除后,在vuex中保存通知错误)。看起来像这样:

[NOTIFY] (state, message) {    
state.data.push(message)    
},

[READ_NOTIFICATION] (state, index) {
state.data.splice(index, 1)
}

问题:当正在获取数据并且正在服务器上设置状态时,它会永远保持全局状态中的错误,这意味着如果我打开新浏览器,我将从上一个会话中得到相同的旧错误。

每个请求都不应该重置服务器端vuex状态吗?我错过了什么?

1 个答案:

答案 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)
    }
  }
}