【Vue学习笔记6】好用的 Vueuse 工具包

2023-11-06

1. 安装Vueuse

VueUse 的官方(https://vueuse.org/)的介绍说这是一个 Composition API 的工具集合,适用于 Vue 2.x 或者 Vue 3.x,用起来和 React Hooks 还挺像的。

VueUse 插件的安装

npm install @vueuse/core

2. 实现全屏功能

pages文件夹中新建vueuse.vue文件,内容如下:

<template>
    <h1 @click="toggle">切换</h1>
</template>

<script setup>
import { useFullscreen } from '@vueuse/core'
const { isFullscreen, enter, exit, toggle } = useFullscreen();
</script>

在router/index.js中配置路由:

...
import Toggle from "../pages/fullScreen.vue"
const routes = [
    ...
    ,{
        path: "/toggle",
        name: "Toggle",
        component: Toggle
    }
    ]

在App.vue中配置组件

    <router-link to="/toggle">切换</router-link>

点击“切换”可以进入全屏和退出全屏。
在这里插入图片描述
useFullscreen 的封装逻辑和 useStorage 类似,都是屏蔽了浏览器的操作,把所有我们需要用到的状态和数据都用响应式的方式统一管理,VueUse 中包含了很多我们常用的工具函数,我们可以把网络状态、异步请求的数据、动画和事件等功能,都看成是响应式的数据去管理。

3. 鼠标位置

修改vueuse.vue文件,引入useMouse

<template>
    <h1 @click="toggle">切换</h1>
    <h1>鼠标位置:{{ x }} * {{ y }}</h1>
</template>

<script setup>
import { useMouse, useFullscreen } from '@vueuse/core'
const { toggle } = useFullscreen();
const { x, y } = useMouse();
</script>

移动鼠标,则会显示鼠标当前的坐标。
在这里插入图片描述

4. 自动计数

修改vueuse.vue文件,引入useInterval

<template>
    <h1 @click="toggle">切换</h1>
    <h1>鼠标位置:{{ x }} * {{ y }}</h1>
    <h1>Interval fired: {{ counter }}</h1>
    <button @click="pause">暂停</button>
    <button @click="resume">恢复</button>
</template>

<script setup>
import { useMouse, useFullscreen, useInterval } from '@vueuse/core'
const { toggle } = useFullscreen();
const { x, y } = useMouse();
const { counter, pause, resume } = useInterval(200,{controls:true})
</script>

在这里插入图片描述
点击“暂停”会停止计数,点击“恢复”又恢复计数。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Vue学习笔记6】好用的 Vueuse 工具包 的相关文章

随机推荐

  • Java设计模式(十四)—— 模板方法模式

    模板方法模式是指定义一个操作中算法的骨架 而将一些步骤延迟到子类中 模板方法使子类可以不改变一个算法的结构 即可重定义该算法的某些特定步骤 适合模板方法模式的情景如下 编制一个通用算法 将某些步骤的具体实现留给子类来实现 需要重构代码 将各
  • 对Linux svn保存的明文密码加密

    需求来源 随着GitHub GitLab的兴起 svn已经渐渐的没落了 从公司当初的源代码管理服务器 逐渐演变成公司的ftp服务器 最近需要部署gitlab的CI单元测试模块 而软件版本都在svn上有备份 我就希望从代码的提交 gt 到版本
  • Python统计文本数字,字母,单词量

    统计一百万位圆周率中数字0 9各自的数量 统计一本书中字母a z各自的数量 统计一本书共有多少个单词 含重复的单词 和单词量 不含重复的单词 import string class CountNums 求txt文本中数字或字母的数量 def
  • Jvm类加载机制详解---类加载器及双亲委托模型

    前面介绍了类加载的几个过程 实际中这些过程大部分都是由虚拟机本身去执行的 我们没有办法去改变或影响这些过程的执行 但是虚拟机团队将类加载阶段第一步中的 通过一个类的全限定名来获取描述该类的二进制字节流 这个动作放到虚拟机外部去实现 以便让应
  • 使用R语言绘制ovarian数据集中病例年龄分布的直方图

    使用R语言绘制ovarian数据集中病例年龄分布的直方图 直方图是一种常用的数据可视化工具 用于展示连续变量的分布情况 在R语言中 我们可以使用hist 函数轻松地创建直方图 本文将展示如何使用R语言绘制ovarian数据集中病例年龄的分布
  • String、StringBuffer和StringBuilder三者之间的区别

    最基本的区别就是String是一个字符串常量 长度不可改变 StringBuffer和StringBuilder是字符串变量 他们两个的长度可以改变 但StringBuffer是线程安全的 而StringBuilder是非线程安全的 Str
  • ** LeetCode 刷题 459

    这是一道我没做出来的简单题 5555 学习 方法1 移动匹配 如果一个字符串可以由一个字串重复获得 那么将两个相同字符串并起来 一定可以在中间再找到该字符串 class Solution public bool repeatedSubstr
  • JavaEE-过滤器和监听器 案例分析

    目录 过滤器和监听器 什么是过滤器 过滤器编程接口 接口Filter的主要方法 设计过滤器 实例1 编写一个过滤器审计用户对资源的访问 什么是监听器 监听器编程接口 设计监听器 实例 编写一个HttpSession事件监听器用来记录当前在线
  • Python pandas读取Excel 数据写入到数据库

    需求得到天眼查的法人信息数据导入到数据库中 经过多次不断试错最后使用Python导入 先上代码 import pandas as pd import sqlalchemy as sqla import os 读取Excel数据 def ge
  • net::ERR_HTTP2_PROTOCOL_ERROR 200错误

    场景 web端的环境上某一个请求报这个问题了 其他的请求正常 打开f12控制台看到异常net ERR HTTP2 PROTOCOL ERROR 200错误 排查 查看nginx的error log 报是某一个临时文件的权限不足 原因是启动n
  • CSVDE导出AD域下指定子OU的Group中所有成员的信息

    CSVDE导出AD域下指定子OU的Group中所有成员的信息 最近搞CSVDE搞的头疼 网上各种乱七八糟的资料 都是东搞一下西搞一下 好不容易找到一篇系统性的介绍使用CSVDE来对AD进行导入导出操作的文章 具体链接 http www co
  • mybatis(六) 处理枚举类型

    处理枚举类型 若想映射枚举类型 Enum 则需要从 EnumTypeHandler 或者 EnumOrdinalTypeHandler 中选一个来使用 比如说我们想存储取近似值时用到的舍入模式 默认情况下 MyBatis 会利用 EnumT
  • python数据清洗的三个常用的处理方式!

    关于python数据处理过程中三个主要的数据清洗说明 分别是缺失值 空格 重复值的数据清洗 这里还是使用pandas来获取excel或者csv的数据源来进行数据处理 若是没有pandas的非标准库需要使用pip的方式安装一下 pip ins
  • 华为OD机试真题-分班-2023年OD统一考试(B卷)

    题目描述 幼儿园两个班的小朋友在排队时混在了一起 每位小朋友都知道自己是否与前面一位小朋友是否同班 请你帮忙把同班的小朋友找出来 小朋友的编号为整数 与前一位小朋友同班用Y表示 不同班用N表示 输入描述 输入为空格分开的小朋友编号和是否同班
  • 深度网络架构的设计技巧<一>:Can CNNs Be More Robust Than Transformers?

    导读 启发于Transformer结构 作者将三种设计引入到CNN中 加强后的CNN取得比ViT更强的鲁棒性 这三种设计 实现简单 仅仅几行代码就能实现高效的CNN结构设计 ArXiv https arxiv org abs 2206 03
  • 数据挖掘的基础

    目录 数据挖掘 一 数据挖掘理解 二 数据准备 1 缺失值处理 2 异常值处理 3 数据偏差的处理 4 数据的标准化 5 特征选择 三 数据建模 1 分类问题 2 聚类问题 3 回归问题 4 关联问题 四 评估模型 1 混淆矩阵与准确率指标
  • C语言删除一个字符串中的多余空格字符

    删除一个字符串中的多余空格字符 使得字符串中的每个单词之间只有一个空格字符 code C C char my delblank char str char newStr char start str while start start st
  • 2021年计算机保研经验帖(真平民)(上交网安、复旦、南大、同济、北航、东南)

    个人背景 中九5 数学辅修 数模省一 组织经历较丰富 干啥啥不行 活动第一名 软著及项目若干 无论文无科研 什么叫学混啊 有强烈的上海和南京倾向 有倾向是好事 但是也不要过于自信 因为各个学校的审核很迷 还是要适当海投保证自己有学上 夏令营
  • (二):Qt信号槽连接及触发原理

    经过 Qt信号槽之 准备阶段 学习 我们知道信号是函数 里面调用了 QMetaObject activate 函数 而对于接收端的槽函数或信号 是通过私有静态函数 qt static metacall 调用元方法 源头是有的 接收端也是有的
  • 【Vue学习笔记6】好用的 Vueuse 工具包

    1 安装Vueuse VueUse 的官方 https vueuse org 的介绍说这是一个 Composition API 的工具集合 适用于 Vue 2 x 或者 Vue 3 x 用起来和 React Hooks 还挺像的 VueUs