手写vuex的mapGetters

Posted zhuxingqing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了手写vuex的mapGetters相关的知识,希望对你有一定的参考价值。

<script>
  import { mapGetters } from ‘vuex‘

  const getters = {
    a: () => 1,
    b: () => 2
  }
  function fn (keys) {
    const data = {}
    keys.forEach(key => {
      // if (getters.hasOwnProperty(key)) {
      if (Object.prototype.hasOwnProperty.call(getters, key)) {
        data[key] = getters[key]
      }
    })
    return data
  }
  export default {
    computed: {
      ...mapGetters([‘test‘]),
      ...fn([‘a‘, ‘b‘, ‘c‘])
    },
    mounted () {
      this.$store.dispatch(‘setTest‘, 9).then(() => {
        console.log(this.test)
        console.log(this.a, this.b, this.c)
      })
    }
  }
</script>

 

以上是关于手写vuex的mapGetters的主要内容,如果未能解决你的问题,请参考以下文章

vuex里mapState,mapGetters使用详解

Vuex mapGetter的基本使用

vuex mapGetters

使用 Vuex,为啥 mapGetters 不接受与 mapState 相同的语法?

Vuex 反应式 mapGetter 与传递的参数

在 Vuex 4 和 Vue 3 中使用 `mapActions` 或 `mapGetters`