Seitencode
methods: {
...mapActions(['addList', 'delList']),
add (value) {
this.addList({title: value})
},
del (item) {
this.delList(item)
}
}
Code in Aktionen
import * as types from './mutations'
export const addList = ({commit}, item) => {
commit(types.ADD_LIST, item)
}
export const delList = ({commit}, item) => {
commit(types.DELETE_LIST, item)
}
Aber die Ausführung meldet [vuex] Erwartet einen String als Typ, aber die Funktion wurde gefunden. Vielen Dank. Wenn Sie den obigen Code in den folgenden Code ändern, kann er ausgeführt werden
methods: {
add (value) {
this.$store.commit('ADD_LIST', {title: value})
},
del (item) {
this.$store.commit('DELETE_LIST', item)
}
}
问一下,你说这段代码可以执行达到效果,那为什么不是
this.$store.commit(types.DELETE_LIST, item)
?你actions.js中都用了types,是不是
mutation-types.js
文件出了问题呢?没用过vuex,不过如果和Redux差不多的话,应该是这么用。
找到问题的答案了,感谢楼上的提醒,actions.js文件应该改成下面这样
或者还是用之前的写法,但是要新建一个mutation-types.js文件
actions.js