feat(@vant/use): support cleanup useEventListener (#11540)

This commit is contained in:
neverland
2023-02-04 21:13:38 +08:00
committed by GitHub
parent 2c2ceddc05
commit ec987530b9
3 changed files with 70 additions and 6 deletions
@@ -31,6 +31,25 @@ export default {
};
```
### Remove Event Listener
`useEventListener` will return a `cleanup` functionyou can call it to remove the event listener.
```js
import { ref } from 'vue';
import { useEventListener } from '@vant/use';
export default {
setup() {
const cleanup = useEventListener('resize', () => {
console.log('window resize');
});
cleanup();
},
};
```
## API
### Type Declarations
@@ -46,7 +65,7 @@ function useEventListener(
type: string,
listener: EventListener,
options?: Options
): void;
): () => void;
```
### Params
@@ -32,6 +32,25 @@ export default {
};
```
### 取消事件监听
`useEventListener` 会返回一个 `cleanup` 函数,调用该函数可以取消事件监听。
```js
import { ref } from 'vue';
import { useEventListener } from '@vant/use';
export default {
setup() {
const cleanup = useEventListener('resize', () => {
console.log('window resize');
});
cleanup();
},
};
```
## API
### 类型定义
@@ -47,7 +66,7 @@ function useEventListener(
type: string,
listener: EventListener,
options?: Options
): void;
): () => void;
```
### 参数