我在应用程序中使用vuex store存储来自feed的新闻项目。想法是,如果用户将导航到其他页面并返回到提要页面,则商店中的帖子应该可见,并且加载新数据应该在后台进行。
这很好,但是在后台加载数据时会出现问题。发生这种情况时,每个单个的post组件都会重新加载并重新安装,这会导致非常糟糕的用户体验(因为news组件很繁杂)。
我要实现的是仅在数据为新数据或不同数据时才重新渲染组件。现在,每个新闻组件每次都会重新渲染,无论数据是新的还是相同的都没有关系。
我通过以下方式将数据保存在Vuex中:
this.insertOrUpdate({data})
在组件中进行计算:
news () {
return News.query().all()
}
并将其用于组件:
<my-news v-for="item in news"
:key="item.id"
:news="item" />
不知道在数据不变时如何防止重新呈现那些组件。甚至有可能吗?