Vue VueUse-基于Vue组合式API的实用工具集

10 篇文章 0 订阅

VueUse:是一款基于组合式API的函数集合。

目录

一、介绍

1、官方文档

(1)英文文档:VueUse | VueUse

(2)中文文档:VueUse中文文档 | VueUse中文文档

2、本文使用的两个函数

(1)useDebounceFn:https://www.vueusejs.com/shared/useDebounceFn/

(2) useClipboard:useClipboard | VueUse中文文档

二、准备工作

1、安装依赖包

2、示例版本

三、使用步骤

1、在单页面引入 '@vueuse/core'

2、具体使用

(1)useDebounceFn

(2)useClipboard

四、完整示例


一、介绍

1、官方文档

(1)英文文档:VueUse | VueUse
(2)中文文档:VueUse中文文档 | VueUse中文文档

2、本文使用的两个函数

(1)useDebounceFn:https://www.vueusejs.com/shared/useDebounceFn/
(2) useClipboard:useClipboard | VueUse中文文档

二、准备工作

1、安装依赖包

npm i @vueuse/core

2、示例版本

"@vueuse/core": "^8.3.0",

三、使用步骤

1、在单页面引入 '@vueuse/core'

import { useDebounceFn, useClipboard } from '@vueuse/core';

2、具体使用

(1)useDebounceFn
<template
  <a-select
    v-model:value="keyword"
    show-search
    placeholder="输入关键字搜索"
    style="width: 300px"
    :default-active-first-option="false"
    :show-arrow="false"
    :filter-option="false"
    :not-found-content="null"
    @search="debounceSearchChange"
  >
</template>

<script lang="ts" setup>
  import { ref } from 'vue';
  import { useDebounceFn, useClipboard } from '@vueuse/core';

  const keyword = ref('');
  const debounceSearchChange = useDebounceFn(handleSearch, 200);
  
  function handleSearch(str) {
    console.log(str)
    // 处理搜索的逻辑
  }

</script>
(2)useClipboard
<template
  <div>
     经纬度:<span style="cursor: pointer;" @click="handleCopy">{{ coord }} 
     </span>
   </div>
</template>

<script lang="ts" setup>
  import { ref } from 'vue';
  import { message } from 'ant-design-vue';
  import { useDebounceFn, useClipboard } from '@vueuse/core';

  const coord = ref('');
  const { text, copy, copied, isSupported } = useClipboard({ coord })

  function handleCopy() {
    copy(coord.value)
    message.info('复制成功');
  }

</script>

注:复制还可以用插件 - clipboard.js,具体使用可参照这篇博客

Js Vue 一键复制文本内容 - clipboard.js(兼容谷歌等主流浏览器)- 附完整示例_clipboard.js vue_Web - Nancy的博客-CSDN博客

四、完整示例

<template
  <a-select
    v-model:value="keyword"
    show-search
    placeholder="输入关键字搜索"
    style="width: 300px"
    :default-active-first-option="false"
    :show-arrow="false"
    :filter-option="false"
    :not-found-content="null"
    @search="debounceSearchChange"
  >
  <div>
     经纬度:<span style="cursor: pointer;" @click="handleCopy">{{ coord }} 
     </span>
   </div>
</template>

<script lang="ts" setup>
  import { ref } from 'vue';
  import { message } from 'ant-design-vue';
  import { useDebounceFn, useClipboard } from '@vueuse/core';

  const keyword = ref('');
  const debounceSearchChange = useDebounceFn(handleSearch, 200);

  const coord = ref('');
  const { text, copy, copied, isSupported } = useClipboard({ coord })

  function handleSearch(str) {
    console.log(str)
    // 处理搜索的逻辑
  }

  function handleCopy() {
    copy(coord.value)
    message.info('复制成功');
  }

</script>

 欢迎扫码下方二维码关注VX公众号

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
安装和使用Vue3中的`vue-session`和`vue-cookie`与Vue2中的使用方式类似。具体步骤如下: 1. 安装`vue-session`和`vue-cookie`依赖 ```bash npm install vue-session vue-cookie --save ``` 2. 在Vue3项目中引入`vue-session`和`vue-cookie` ```javascript import { createApp } from 'vue'; import VueSession from 'vue-session'; import VueCookie from 'vue-cookie'; import App from './App.vue'; const app = createApp(App); // 注册vue-session和vue-cookie插件 app.use(VueSession); app.use(VueCookie); app.mount('#app'); ``` 3. 在Vue3组件中使用`vue-session`和`vue-cookie` ```javascript import { onMounted } from 'vue'; import { useSession, useCookie } from 'vue-session'; export default { setup() { const { set, get, remove } = useSession(); const { set: setCookie, get: getCookie, remove: removeCookie } = useCookie(); onMounted(() => { // 设置session set('name', 'John'); // 获取session const name = get('name'); console.log(name); // 'John' // 移除session remove('name'); // 设置cookie setCookie('name', 'John', 1); // 获取cookie const cookieName = getCookie('name'); console.log(cookieName); // 'John' // 移除cookie removeCookie('name'); }); } } ``` 需要注意的是,在Vue3中,由于使用了组合式API,`vue-session`和`vue-cookie`的使用方式略有不同。你需要使用`useSession`和`useCookie`函数来获取`set`、`get`和`remove`等方法,然后在组件中使用它们。 另外,`vue-cookie`中的`set`方法需要传递一个过期时间参数(以天为单位),而不是Vue2中的`expires`属性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值