소스 검색

fix(reactivity): fix dev-only memory leak by updating dep.subsHead on sub removal

ref #11956
Evan You 1 년 전
부모
커밋
5c8b76ed6c
1개의 변경된 파일4개의 추가작업 그리고 0개의 파일을 삭제
  1. 4 0
      packages/reactivity/src/effect.ts

+ 4 - 0
packages/reactivity/src/effect.ts

@@ -413,6 +413,10 @@ function removeSub(link: Link) {
     // was previous tail, point new tail to prev
     dep.subs = prevSub
   }
+  if (__DEV__ && dep.subsHead === link) {
+    // was previous head, point new head to next
+    dep.subsHead = nextSub
+  }
 
   if (!dep.subs && dep.computed) {
     // last subscriber removed