在Vue 3中使用useStorage轻松实现localStorage功能

简介: 在Vue 3中使用useStorage轻松实现localStorage功能

在Vue 3中使用useStorage轻松实现localStorage功能

VueUse 介绍

VueUse文档:Get Started | VueUse

VueUse是基于Vue3的Composition API的实用函数的集合,useStorage是其中的一个函数。我们可以使用useStorage来实现我们的localStorage功能。

安装

npm i @vueuse/core

使用CDN

<script src="https://unpkg.com/@vueuse/shared"></script>
<script src="https://unpkg.com/@vueuse/core"></script>


useStorage()的用法


useStorage()将要用于引用的键名作为第一个参数传递,将要保存的值作为第二个参数传递。

值的保存、获取、删除


localStorage设置setItem()来保存值,用getItem()来获取值,用removeItem来删除值如下:

<script setup >
   import {ref} from "vue";
   const counter = ref('消息')
   //保存值
   localStorage.setItem('counter',counter.value)
   //获取值
   const data = localStorage.getItem('counter')
   console.log('data',data)
   //删除值
   localStorage.removeItem('counter')
</script>

useStorage()只需要一个就可以进行值的保存和获取,如下,用法:

const storedValue = useStorage('key', value)

例子:

 const msg = ref('你好')
   //保存值
   useStorage('msg',msg.value)
   //获取值
   const msgData = useStorage('msg')
   console.log('msgData',msgData.value)
   //删除
   const clear = () => {
     msg.value = null
   }


useStorage()自定义序列化


默认情况下,useStorage将根据提供的默认值的数据类型智能地使用相应的序列化程序。例如,JSON.stringify/JSON.parse将用于对象,Number.toString/parseFloat用于数字等。 如下:


import { useStorage } from '@vueuse/core'
useStorage(
  'key',
  {},
  undefined,
  {
    serializer: {
      read: (v: any) => v ? JSON.parse(v) : null,
      write: (v: any) => JSON.stringify(v),
    },
  },
)


以上代码,我们设置对象的名称为key,初始值为空对象{},如果存储中没有key的值,则返回null。在写入时,将对象序列化为JSON字符串。


相关文章
|
7月前
|
JavaScript
什么是Vue-响应式数据
什么是Vue-响应式数据
84 0
|
7月前
|
缓存 JavaScript
vue使用localStorage缓存数据
vue使用localStorage缓存数据
|
2月前
|
存储 JSON JavaScript
Vue.js开发中基于localStorage与sessionStorage的本地存储利器:Vue-ls插件使用详解
Vue.js开发中基于localStorage与sessionStorage的本地存储利器:Vue-ls插件使用详解
86 0
|
2月前
|
JavaScript 前端开发 开发者
使用 Vue.js 和 Vuex 构建响应式前端应用
【10月更文挑战第2天】使用 Vue.js 和 Vuex 构建响应式前端应用
33 0
|
3月前
|
缓存 JavaScript API
介绍一下Vue 3的响应式系统
【9月更文挑战第3天】介绍一下Vue 3的响应式系统
56 3
|
7月前
|
缓存 JavaScript 前端开发
Vue 3的响应式系统
【5月更文挑战第31天】Vue 3的响应式系统
59 1
|
7月前
|
存储 JSON JavaScript
在Vue 3中使用useStorage轻松实现localStorage功能
VueUse是基于Vue3的Composition API的实用函数的集合,useStorage是其中的一个函数。我们可以使用useStorage来实现我们的localStorage功能。
|
7月前
Vue3的 响应式数据
Vue3的 响应式数据
51 0
|
7月前
|
存储 JavaScript 前端开发
vue本地存储
vue本地存储
|
JavaScript
vue 项目 页面刷新404问题
vue 项目 页面刷新404问题
173 0