Browse Source

refactor(reactivity): use hasChanged to avoid tracking NaN key twice (#7378)

3 năm trước cách đây
mục cha
commit
13b72317c5
1 tập tin đã thay đổi với 2 bổ sung2 xóa
  1. 2 2
      packages/reactivity/src/collectionHandlers.ts

+ 2 - 2
packages/reactivity/src/collectionHandlers.ts

@@ -27,7 +27,7 @@ function get(
   const rawTarget = toRaw(target)
   const rawKey = toRaw(key)
   if (!isReadonly) {
-    if (key !== rawKey) {
+    if (hasChanged(key, rawKey)) {
       track(rawTarget, TrackOpTypes.GET, key)
     }
     track(rawTarget, TrackOpTypes.GET, rawKey)
@@ -50,7 +50,7 @@ function has(this: CollectionTypes, key: unknown, isReadonly = false): boolean {
   const rawTarget = toRaw(target)
   const rawKey = toRaw(key)
   if (!isReadonly) {
-    if (key !== rawKey) {
+    if (hasChanged(key, rawKey)) {
       track(rawTarget, TrackOpTypes.HAS, key)
     }
     track(rawTarget, TrackOpTypes.HAS, rawKey)