我有一个要用来制作动态mapGetters的道具,但mapGetters认为道具是未定义的,这可能是因为在道具之前已加载了计算对象。有人知道我如何使它动态吗?我的代码如下:
export default {
props: ['listType'],
components: {
addrow: AddRow
},
computed: {
...mapGetters({
list: `${this.listType}/list`,
current: 'Dropdown/current'
})
},
}
答案 0 :(得分:3)
[更新] 我已经找到了解决方案,这要感谢@boussadjrabrahim 我的工作代码如下:
SyntaxError: Invalid Syntax
答案 1 :(得分:0)
您还可以使用this.$store
来完全访问商店。因此,list
将成为
export default {
props: ['listType'],
computed: {
list() {
return this.$store.getters[`${this.listType}/list`]
}
}
}
使用分发方法来触发操作,就像这样
export default {
props: ['listType'],
methods: {
sortList(order) {
this.$store.dispatch(`${this.listType}/list`, order)
}
}
}