很多人在用 localStorage
或 sessionStorage
的时候喜欢直接用,明文存储,直接将信息暴露在;浏览器中,虽然一般场景下都能应付得了且简单粗暴,但特殊需求情况下,比如设置定时功能,就不能实现。就需要对其进行二次封装,为了在使用上增加些安全感,那加密也必然是少不了的了。为方便项目使用,特对常规操作进行封装。不完善之处会进一步更新...
设计
【VUE|vue项目中 localStorage 的用法建议】封装之前先梳理下所需功能,并要做成什么样,采用什么样的规范,部分主要代码片段是以 localStorage
作为示例,最后会贴出完整代码的。可以结合项目自行优化,也可以直接使用。
// 区分存储类型 type
// 自定义名称前缀 prefix
// 支持设置过期时间 expire
// 支持加密可选,开发环境下未方便调试可关闭加密// 支持数据加密 这里采用 crypto-js 加密 也可使用其他方式// 判断是否支持 Storage isSupportStorage// 设置 setStorage// 获取 getStorage// 是否存在 hasStorage// 获取所有key getStorageKeys// 根据索引获取key getStorageForIndex// 获取localStorage长度 getStorageLength// 获取全部 getAllStorage// 删除 removeStorage// 清空 clearStorage//定义参数 类型 window.localStorage,window.sessionStorage,
const config = {
type: 'localStorage', // 本地存储类型 localStorage/sessionStor
推荐阅读
- VUE|vue 实现点击“增加“”按钮,添加一个HTML元素
- VUE|Vue项目(style样式篇)
- VUE|vue使用xe-utils通用函数库
- Vue动画效果
- Vite|Vite使用.env文件
- javascript|客观评价 增长趋势比 vite 还猛的 TailwindCSS
- 前端|新提案,初识CSS的object-view-box属性
- 前端|注意避坑,Vue Router 4: 路由参数在 created/setup 时不可用
- 前端|停止像这样使用 “async/await“,改用原版