const isExistInReactiveMap = () =>
key === ReactiveFlags.RAW && receiver === reactiveMap.get(target);
const isExistInReadonlyMap = () =>
key === ReactiveFlags.RAW && receiver === readonlyMap.get(target);
const isExistInShallowReadonlyMap = () =>
key === ReactiveFlags.RAW && receiver === shallowReadonlyMap.get(target);
这三个常量写为函数对象似乎并没有什么实质性作用,vue3现在的代码已经实现为:
(key === ReactiveFlags.RAW &&
receiver ===
(isReadonly
? shallow
? shallowReadonlyMap
: readonlyMap
: shallow
? shallowReactiveMap
: reactiveMap
).get(target))
也许可以优化下。
这三个常量写为函数对象似乎并没有什么实质性作用,vue3现在的代码已经实现为:
也许可以优化下。