当前位置: 首页 > news >正文

VueUse工具库

VueUse

VueUse不是Vue.use,它是为Vue 2和3服务的一套Vue Composition API的常用工具集,是目前世界上Star最高的同类型库之一。它的初衷就是将一切原本并不支持响应式的JS API变得支持响应式,省去程序员自己写相关代码。

VueUse 是一个基于 Composition API 的实用函数集合。通俗的来说,这就是一个工具函数包支持了更好的逻辑分离,它可以帮助你快速实现一些常见的功能,免得你自己去写,解决重复的工作内容。以及进行了机遇 Composition API 的封装。


引入

import { 具体方法 } from ‘@vueuse/core’

一些方法的具体用法

  • useMouse:监听当前鼠标坐标的一个方法,他会实时的获取鼠标的当前的位置
  • useLocalStorage:据持久化到本地存储中
  • throttleFilter:节流 throttleFilter(100)
  • debounceFilter:防抖 debounceFilter(100)
  • OnClickOutside:在点击元素外部时触发一个回调函数
  • **注意:**这里的 OnClickOutside 函数是一个组件,不是一个函数。需要package.json 中安装了 @vueuse/components。
  • useDraggable

在vue中利用useDraggable实现antDesign中的Modal移动

官方示例:

<script setup lang="ts">
import { ref } from 'vue'
import { useDraggable } from '@vueuse/core'const el = ref<HTMLElement | null>(null)// `style` will be a helper computed for `left: ?px; top: ?px;`
const { x, y, style } = useDraggable(el, {initialValue: { x: 40, y: 40 },
})
</script><template><div ref="el" :style="style" style="position: fixed">Drag me! I am at {{x}}, {{y}}</div>
</template>

 useDraggable 接收两个参数:target拖拽目标元素。options为可选参数

Component Usage

需要安装  

npm i @vueuse/core @vueuse/components
<UseDraggable :initialValue="{ x: 10, y: 10 }" v-slot="{ x, y }">Drag me! I am at {{x}}, {{y}}
</UseDraggable>

 本地vue2示例

<UseDraggable 
:initialValue="{ x: 10, y: 10 }"  
v-slot="{ x, y }" 
style="cursor: move; position: fixed; z-index: 999; background: red; padding: 12px;"
><div >Drag me!I am at {{ x }}, {{ y }}</div>
</UseDraggable>import { UseDraggable } from '@vueuse/components'components: {UseDraggable},data 定义 x y 

 

其他具体可参考官方文档 :VueUse

相关文章:

  • linux命令积累
  • pytorch中的归一化:BatchNorm、LayerNorm 和 GroupNorm
  • Java毕业设计—vue+SpringBoot图书借阅管理系统
  • 【小沐学Python】Python实现TTS文本转语音(speech、pyttsx3、百度AI)
  • elasticsearch|大数据|elasticsearch的api部分实战操作以及用户和密码的管理
  • 道可云元宇宙每日资讯|青岛市元宇宙领域新产品推介暨产学研对接会举行
  • 我有才打造知识付费小程序
  • Bypass open_basedir
  • 力扣面试150题 | 搜索插入位置
  • 机器人集群控制算法概述
  • 事业编《综应 综合知识应用能力 综合应用》笔记
  • Cpolar配置外网访问和Dashy
  • 为 Compose MultiPlatform 添加 C/C++ 支持(1):在 kotlin 中使用 cinterop 实现与 C/C++ 互操作
  • 鸿蒙原生应用/元服务开发-新版本端云一体化模板体验反馈
  • linux远程桌面管理工具(xrdp)、向日葵
  • 0x05 Python数据分析,Anaconda八斩刀
  • AHK 中 = 和 == 等比较运算符的用法
  • CentOS 7 防火墙操作
  • Flex布局到底解决了什么问题
  • JavaScript 是如何工作的:WebRTC 和对等网络的机制!
  • js正则,这点儿就够用了
  • nginx 配置多 域名 + 多 https
  • Perseus-BERT——业内性能极致优化的BERT训练方案
  • TiDB 源码阅读系列文章(十)Chunk 和执行框架简介
  • vue总结
  • web标准化(下)
  • 爱情 北京女病人
  • 翻译:Hystrix - How To Use
  • 给初学者:JavaScript 中数组操作注意点
  • 给自己的博客网站加上酷炫的初音未来音乐游戏?
  • 跨域
  • 推荐一款sublime text 3 支持JSX和es201x 代码格式化的插件
  • 一个SAP顾问在美国的这些年
  • 用Visual Studio开发以太坊智能合约
  • Java性能优化之JVM GC(垃圾回收机制)
  • 直播平台建设千万不要忘记流媒体服务器的存在 ...
  • !!Dom4j 学习笔记
  • # 深度解析 Socket 与 WebSocket:原理、区别与应用
  • $.extend({},旧的,新的);合并对象,后面的覆盖前面的
  • (html5)在移动端input输入搜索项后 输入法下面为什么不想百度那样出现前往? 而我的出现的是换行...
  • (JS基础)String 类型
  • (SERIES10)DM逻辑备份还原
  • (SpringBoot)第七章:SpringBoot日志文件
  • (WSI分类)WSI分类文献小综述 2024
  • (十八)用JAVA编写MP3解码器——迷你播放器
  • (十五)使用Nexus创建Maven私服
  • (一)utf8mb4_general_ci 和 utf8mb4_unicode_ci 适用排序和比较规则场景
  • (自用)网络编程
  • *p=a是把a的值赋给p,p=a是把a的地址赋给p。
  • .net core docker部署教程和细节问题
  • .NET Core 网络数据采集 -- 使用AngleSharp做html解析
  • .Net+SQL Server企业应用性能优化笔记4——精确查找瓶颈
  • .NET4.0并行计算技术基础(1)
  • .NET与java的MVC模式(2):struts2核心工作流程与原理
  • /etc/fstab 只读无法修改的解决办法