__storeToDerived

变量:__storeToDerived

ts
const __storeToDerived: WeakMap<Store<unknown, (cb) => unknown>, Set<Derived<unknown, readonly any[]>>>;
const __storeToDerived: WeakMap<Store<unknown, (cb) => unknown>, Set<Derived<unknown, readonly any[]>>>;

定义于:scheduler.ts:19

这里是为了解决金字塔依赖问题,例如: A /
B C \ / D

当我们深度遍历这棵树时,如何避免 D 被重复计算两次;一次在 B 更新时,一次在 C 更新时。

为了解决这个问题,我们创建了 linkedDeps,它允许我们同步避免对状态的写入,直到所有依赖项都已解析。

这是一个 store 的记录,因为派生 store 不能写入值,但 store 可以。