Riot.JS: 不可变数据结构导致不需要的渲染
Riot.JS: immutable data structure causes unwanted rendering
我尝试使用 Redux 管理我的 Riot 应用程序状态,但我注意到当我的模型(一个简单的项目数组)发生变化时,从这个集合中渲染的每个元素都会重新渲染,即使修改涉及到一件。
使用可变 reducer 没有问题,在这两种情况下,我都会观察商店中的变化以触发视图更新(可变数据不需要)。
this.on('mount', () => {
opts.store.subscribe(() => {
this.update({
items: opts.store.getState()
})
})
})
我认为 Riot 的虚拟 DOM 检查只会重新渲染 DOM...
的更改部分
我是不是做错了什么?
将no-reorder
添加到循环:
<li no-reorder each={ items } onclick={ toggle }>
<span>{x}</span>
</li>
我尝试使用 Redux 管理我的 Riot 应用程序状态,但我注意到当我的模型(一个简单的项目数组)发生变化时,从这个集合中渲染的每个元素都会重新渲染,即使修改涉及到一件。
使用可变 reducer 没有问题,在这两种情况下,我都会观察商店中的变化以触发视图更新(可变数据不需要)。
this.on('mount', () => {
opts.store.subscribe(() => {
this.update({
items: opts.store.getState()
})
})
})
我认为 Riot 的虚拟 DOM 检查只会重新渲染 DOM...
的更改部分我是不是做错了什么?
将no-reorder
添加到循环:
<li no-reorder each={ items } onclick={ toggle }>
<span>{x}</span>
</li>