我正在为@ ngrx / store创建选择器。从概念上讲,它们似乎类似于存储过程或SQL中的某些东西。
那就是说,我在某些情况下需要提供论据,这是我到目前为止所达成的最佳解决方案。
const itemsAll = createSelector(state, (state) => state.items);
const itemById = (id) => createSelector(itemsAll, (items) => find(items, { Id: id }))
我知道这个例子非常简单,但我试图理解的是itemById
实现如何影响memoization。我的直觉告诉我它会破裂,甚至可能泄漏(因为工厂返回的每个函数都有自己的缓存,可能永远不会被释放)?
那就是说,领主知道我的直觉并不总是正确的......如果有人能够提供一些令人惊叹的洞察力。