entities
。我想选择那些活跃的人,并避免在每次更新时重新启动它们(作为一个没有活动的实体,可能会添加)。我认为我可以跟踪
active
,并在
entities
变得活跃时进行更新。 我的问题是,要抓住活跃的实体,我猜想写一些类似的东西:
activeIds
,这会引起问题!我相信每当更新时,它都会重新渲染。 I,程序员可以确定,除非明确更改,否则输出不会改变。我如何仅实现对
entity
?的依赖
您可以通过使选择器仅取决于const selectActiveEntities = createSelector(
(state) => state.entities.items,
(state) => state.entities.activeIds,
(entities, activeIds) => activeIds.map(id => entities[id])
)
来解决此问题。尝试一下:
state.entities.items
以这种方式,选择器仅在更改时才会更新,而不是更新
state.entities.activeIds