(e: ReactiveEffect)
| 567 | } |
| 568 | |
| 569 | function cleanupEffect(e: ReactiveEffect) { |
| 570 | const { cleanup } = e |
| 571 | e.cleanup = undefined |
| 572 | if (cleanup) { |
| 573 | // run cleanup without active effect |
| 574 | const prevSub = activeSub |
| 575 | activeSub = undefined |
| 576 | try { |
| 577 | cleanup() |
| 578 | } finally { |
| 579 | activeSub = prevSub |
| 580 | } |
| 581 | } |
| 582 | } |