前端必看!LocalStorage这么用,再也不踩坑(多框架通用,直接复制)
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
所有前端必看!LocalStorage看似简单,却有90%的人用错——存对象报错、存数组失效、数据污染、内存溢出,甚至导致页面卡顿。全程实操干货+通用封装,Vue/React/Uniapp/小程序/Node都能用,复制就能避免所有坑 先搞懂:LocalStorage核心痛点,你一定踩过做前端开发,谁没用 LocalStorage 存过 token、用户信息?但大多数人都是裸写
重点:LocalStorage 是前端本地存储的基础,Vue、React、Uniapp、小程序、Node(前端渲染)都能用。一套通用封装,彻底解决所有痛点,不用重复写冗余代码。 核心干货:LocalStorage通用封装(直接复制,多框架通用)新建 实战用法:多框架示例,直接复制不管是 Vue、React、Uniapp,用法完全一致,只需引入封装好的方法,无需额外适配。以下示例覆盖 80% 的使用场景。
2. Vue3/Uniapp页面中使用3. React页面中使用代码高亮:
import { useState, useEffect } from 'react'; import { setStorage, getStorage, removeStorage } from '@/utils/storage'; function UserPage() { const [user, setUser] = useState({}); useEffect(() => { // 组件挂载时取数据 const userInfo = getStorage('userInfo'); if (userInfo) { setUser(userInfo); } }, []); // 退出登录,删除存储 const logout = () => { removeStorage('token'); removeStorage('userInfo'); setUser({}); }; return ( <div> {user.name} <button onClick={logout}>退出登录</button> </div> ); } 4. 小程序/Uniapp适配(特殊处理)小程序不支持 实战避坑:5个高频坑,新手必避坑1:直接存对象/数组,导致报错或解析失败 错误示例: 坑2:不设过期时间,导致数据污染 存 token、临时数据时,不设过期时间,用户退出后数据依然存在,再次登录会出现异常。 坑3:键名不统一,导致覆盖冲突 多个组件/页面存数据,键名都是 “user”“data”,容易互相覆盖。 坑4:忽略浏览器兼容性,导致报错 部分低版本浏览器、隐私模式下,LocalStorage 不可用,裸写会报错。 坑5:清空所有存储,影响其他项目 错误示例:直接用 进阶技巧:LocalStorage进阶用法1.监听 LocalStorage 变化(跨页面通信)2. 限制存储大小,避免内存溢出LocalStorage 默认存储上限约 5MB,存大量数据会导致内存溢出。可在封装中添加存储大小校验: 结尾:干货总结LocalStorage 是前端必备的本地存储工具。一套通用封装,解决存对象、过期时间、冲突、容错等所有痛点,适配所有前端框架,复制就能用,避开 5 个高频坑,再也不用为存储问题头疼。 阅读原文 该文章在 2026/4/9 14:13:00 编辑过 |
关键字查询
相关文章
正在查询... |