vue中关于...mapGetters

不会UI的前端
  • 64

data () {

  return {
  }
},

computed: {

  ...mapGetters([
    'movieDetail',
    'loadingMoving'
  ])
}

在一个组件中computed中...mapGetters中的movieDetail会不会自动执行(或者说什么时候执行)?getters.js中movieDetail方法返回的是一个对象,还有一个问题是在组件中能够之后获取到movieDetail对象中的属性,例如{movieDetail.title}能够取到值,但是data中并没有定义movieDetail。不是很清楚数据的来源。

回复
阅读 5.5k
1 个回答
toBeTheLight
  • 16.6k
✓ 已被采纳

你把getters当作依赖vuex中数据的computed就行。
computed是怎么运行的,getters就是怎么运行的。
简单的说,computed依赖当前组件的data或者其他的computed进行计算,当computed指向一个getters的时候,它的计算规则就是getters里定义的了(依赖state或别的getters,计算过程发生在vuex store里,但是数据反映到你当前使用这个getters的组件中)。

Vuex 允许我们在 store 中定义『getters』(可以认为是 store 的计算属性)。Getters 接受 state 作为其第一个参数:

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏