跳到主要内容

watchAtMost

分类
导出大小
323 B
上次更改
上个月

带有触发次数限制的 watch

用法

类似于 watch,但额外提供了一个 count 选项,用于设置回调函数被触发的次数。达到指定次数后,该侦听器将自动停止。

ts
import { 
watchAtMost
} from '@vueuse/core'
watchAtMost
(
source, () => {
console
.
log
('trigger!') }, // triggered it at most 3 times
{
count
: 3, // the number of times triggered
}, )

类型声明

ts
export interface 
WatchAtMostOptions
<
Immediate
>
extends WatchWithFilterOptions<
Immediate
> {
count
:
MaybeRefOrGetter
<number>
} export interface WatchAtMostReturn {
stop
:
WatchStopHandle
pause
: () => void
resume
: () => void
count
:
ShallowRef
<number>
} export declare function
watchAtMost
<
T
extends
Readonly
<
WatchSource
<unknown>[]>,
Immediate
extends
Readonly
<boolean> = false,
>(
sources
: [...
T
],
cb
:
WatchCallback
<
MapSources
<
T
>,
MapOldSources
<
T
,
Immediate
>>,
options
:
WatchAtMostOptions
<
Immediate
>,
): WatchAtMostReturn export declare function
watchAtMost
<
T
,
Immediate
extends
Readonly
<boolean> = false,
>(
sources
:
WatchSource
<
T
>,
cb
:
WatchCallback
<
T
,
Immediate
extends true ?
T
| undefined :
T
>,
options
:
WatchAtMostOptions
<
Immediate
>,
): WatchAtMostReturn

来源

源码文档

贡献者

Anthony Fu
Anthony Fu
IlyaL
Arthur Darkstone
vaakian X
lvjiaxuan
lvjiaxuan
HG
webfansplz

更新日志

d3176 - feat: 为返回值添加 pause 和 resume 功能 (#4897)
v12.8.0
7432f - feat(types): 废弃 MaybeRefMaybeRefOrGetter,转而使用 Vue 的原生类型 (#4636)
v12.3.0
59f75 - feat(toValue): 废弃 @vueuse/shared 中的 toValue,转而使用 Vue 的原生函数
0a9ed - feat!: 放弃对 Vue 2 的支持,优化打包并清理 (#4349)

根据 MIT 许可证发布。