【问题标题】:Vuex: Having a problem using a getter inside a viewVuex:在视图中使用 getter 时遇到问题
【发布时间】:2019-07-24 23:57:27
【问题描述】:

我在商店中有一个名为“tasks”的模块,它有这个 getter -

getTaskById: state => id => state.idToTask[id]

看起来非常简单和基本,idToTask 只是一个以 ids 为键的对象。

现在在视图中(显示任务的组件) - 它从路由器获取 taskId 作为 prop,我使用这样的 mapGetters -

methods: {
...mapGetters('tasks', ['getTaskById'])
}

我有一个计算出来的:

task() {
return this.getTaskById(this.taskId)
}

我真的不知道这里出了什么问题,但是由于某种原因,我收到了任务未定义(在模板中)的错误...

我会提前说我已经尝试过

this.$store.getters['tasks/getTaskById'](taskId)

但它似乎并不好用......

有什么帮助吗?

【问题讨论】:

  • 我不知道为什么会这样,但试试return this.getTaskById()(this.taskId)

标签: vue.js vuex


【解决方案1】:

忽略我的评论,mapGetters 应该进入计算,而不是方法。

computed: {
    ...mapGetters('tasks', ['getTaskById'])
}

https://vuex.vuejs.org/guide/getters.html

https://github.com/vuejs/vuex/issues/1136

【讨论】:

    猜你喜欢
    • 2020-03-28
    • 1970-01-01
    • 1970-01-01
    • 2020-06-06
    • 1970-01-01
    • 1970-01-01
    • 2017-06-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多