【发布时间】:2017-02-09 08:14:03
【问题描述】:
我有一个使用v-for 渲染的组件列表。并非所有组件都同时显示。我使用slice 对渲染组件数组进行分页。
不应重新渲染这些组件,因为其中一些具有用户输入的数据,而另一些则执行与网络相关的任务。
我尝试使用<keep-alive>。但是,这只会渲染第一个组件。
<keep-alive>
<component :is="component.type" :key="component.id" v-for="component in components">
</keep-alive>
如何保持组件的动态列表有效?
【问题讨论】:
-
活着的意思是防止重新渲染?也许是因为失去对组件的观察?这样做很容易。让我知道它是否适合你
-
@MU 是的,我需要防止重新渲染。失去对组件的观察是什么意思?
-
你到底是什么问题,是不是:
this renders only the first component? -
@Saurabh 是的。即使
components数组中有多个项目,也只显示第一个。不过,它正确地保留了数据,因此不会重新渲染。
标签: vue.js vue-component