首页IT科技vue store和localstorage(在Vue 3中使用useStorage轻松实现localStorage功能)

vue store和localstorage(在Vue 3中使用useStorage轻松实现localStorage功能)

时间2025-09-16 20:17:45分类IT科技浏览7577
导读:在Vue 3中使用useStorage轻松实现localStorage功能 VueUse 介绍...

在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字符串         。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
redis常见面试题及答案(Redis高频面试题汇总(上)) 苹果cms模板制作教程视频(苹果CMSV10免费模板-开启无限可能的网站建设之路)