tryOnScopeDispose

尝试获取 effect 区域内的副作用

这是一个较为底层的 api,需要你对 effect 作用域有非常好的理解。

大多数情况下,它相当于 tryOnUnmounted

Usage

import { tryOnScopeDispose } from '@/uni_modules/tob-use'

// 不在组件内,将不会注册回调,并返回 false
const result = tryOnScopeDispose(() => {
    console.log("这将不做任何事情")
})

result // false
<script setup>
import { tryOnScopeDispose } from '@/uni_modules/tob-use'

const timer = setTimeout(() => {
    console.log("我可能不会触发")
}, 1000000)

// 在组件内,当组件去卸载时
// 因为 setup 也算 effect 一个作用域,所以将执行回调
const result = tryOnScopeDispose(() => {
    clearTimeout(timer)
})

result // true
</script>
Last Updated:
Contributors: markthree