如何从其他地方的组件传递计算 属性

How to pass computed property from component somewhere else

我有来自官方网站的工作示例。

Example

 computed: { filteredData: function () {} )

如何全局获取过滤数据(计算属性)?特别是如果我想将它发送到其他地方。 demo.$store 仅包含原始属性,未计算。我看到实现此目的的唯一方法是 demo.$children[0].filteredData。但这并不纯粹。顺便说一下,我正在使用 vuex。

计算数据仅对当前组件可用。但是,您可以在 Vuex 中使用 getters 并在需要时将其作为计算 属性 导入。

在 vuex 中,你这样声明:

getters: {
  filteredData (state) {
    return state.data.filter(x => x)
  }
}

然后,在您需要的地方,您刚刚导入:

import { mapGetters } from 'vuex'
export default {
  // ...
  computed: {
    ...mapGetters({
      filteredData
    })
  }
  // ...
}