vue3.0组合API提供了更多逻辑代码封装的能力。@vueuse/core 基于组合API封装好用的工具函数。

@vueuse/core 包,它封装了常见的一些交互逻辑。

下载:

npm i @vueuse/core@4.9.0

下面是自己在项目中运用到的函数 

1、useWindowScroll() 是@vueuse/core提供的api可返回当前页面滚动时候蜷曲的距离。x横向,y纵向。而且这两个数据是响应式的

下面的代码,下载后先引入此函数,然后从里面结构出y,即当前页面滚动时距离顶部的距离,然后可以将y返回出去,在模板中使用,然后可以设置当y>一定值的时候,让其做一些操作。

import { useWindowScroll } from '@vueuse/core'

const { x, y } = useWindowScroll()

 2、useIntersectionObserver(),来实现监听进入可视区域行为。

通过下面的程序可以实现进入一个看见一个dom的时候再去请求数据,实现数据的懒加载

// stop 是停止观察是否进入或移出可视区域的行为    
const { stop } = useIntersectionObserver(
  // target 是观察的目标dom容器,必须是dom容器,而且是vue3.0方式绑定的dom对象
  target,
  // isIntersecting 是否进入可视区域,true是进入 false是移出
  // observerElement 被观察的dom
  ([{ isIntersecting }], observerElement) => {
    // 在此处可根据isIntersecting来判断,然后做业务
    //如果进入了可视区,就先让其停止监测,然后进行数据的请求
    if (isIntersecting) {
          stop()
          findNew().then(data => {
          goods.value = data.result
    })
  },
    // 配置选项,相交的比例大于0就触发
    {
      threshold: 0
    }
)

3、onClickOutside():(点击一个Dom其他地方的逻辑操作)

可以看这篇文章: https://blog.csdn.net/m0_45219210/article/details/124715223?spm=1001.2014.3001.5501

 持续更新中......

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐