vue3怎么通过可以监听视口一旦高度发生变化 就立刻执行的钩子函数
时间: 2024-03-27 21:40:41 浏览: 226
可以使用Vue 3中提供的`onMounted`和`onUnmounted`钩子函数以及`window.addEventListener`来实现监听视口高度变化的功能,具体步骤如下:
1. 在组件中引入`onMounted`和`onUnmounted`钩子函数:
```javascript
import { onMounted, onUnmounted } from 'vue';
```
2. 在`onMounted`钩子函数中添加`window.addEventListener`监听窗口高度变化的事件:
```javascript
onMounted(() => {
window.addEventListener('resize', handleResize);
});
```
3. 在`onUnmounted`钩子函数中移除监听事件:
```javascript
onUnmounted(() => {
window.removeEventListener('resize', handleResize);
});
```
4. 在`handleResize`函数中编写视口高度变化后需要执行的代码:
```javascript
const handleResize = () => {
// 视口高度发生变化后需要执行的代码
};
```
完整代码示例:
```javascript
import { onMounted, onUnmounted } from 'vue';
export default {
setup() {
const handleResize = () => {
// 视口高度发生变化后需要执行的代码
};
onMounted(() => {
window.addEventListener('resize', handleResize);
});
onUnmounted(() => {
window.removeEventListener('resize', handleResize);
});
},
};
```
这样,当视口高度发生变化时,`handleResize`函数就会被立即执行。
阅读全文