问题引自:https://segmentfault.com/q/10...
回答者提到:
data是有缓存的,一旦Vuex中值改变了,没法做到响应。
而放在computed中,虽然也有缓存,但会自动监视依赖。
请问什么叫自动监视依赖呢?
记得 Vue 官方文档中提到过几种不会触发更新检测的情况,其中包括直接修改对象的属性。还提到这时需要用 Vue.set()
进行修改。
是不是形如以下方式:
data(){ return { topicList: this.$store.state.topicList } },
会导致 topicList 不会因 Vuex 中管理的 state.topicList 的修改而变化。
而:
computed:{ topicList(){ return this.$store.state.topicList } } }
这种方式会监听 state 中 topicList 的变化呢?