【发布时间】:2018-05-28 20:24:09
【问题描述】:
我在 Vuejs Vuex 中使用我的第一个应用程序。 我找不到过滤状态的最佳方法。
存储/index.js
state: {
projects: []
},
mutations: {
SET_PROJECT_LIST: (state, { list }) => {
state.projects = list
}
},
actions: {
LOAD_PROJECT_LIST: function ({ commit }) {
axios.get('projects').then((response) => {
commit('SET_PROJECT_LIST', { list: response.data})
}, (err) => {
console.log(err)
})
}
}
在组件中:
computed: {
...mapState({
projects
})
}
此时我有一个我的项目列表。好!
现在我添加了按钮来过滤我的项目,例如: 活动项目,键入项目...
如何操作我的项目对象 (this.projects)?
和另一个this.$store.dispatch
使用另一个 getters 函数
我在不改变状态的情况下操纵状态?
我有点困惑。
Vuex 中填充列表的过滤器示例?
编辑: 我是这样尝试的:
this.$store.getters.activeProjects()
但是我如何更新 this.projects?
activeProjects(){
this.projects = this.$store.getters.activeProjects()
}
没用
【问题讨论】:
-
你读过这个vuex.vuejs.org/en/getters.html 吗?