当前位置: 首页 > news >正文

网站建设四个阶段seo关键词推广价格

网站建设四个阶段,seo关键词推广价格,广州做网站信息,义乌外贸网站建设cache.ts缓存工具 浏览器缓存工具封装实现使用方法示例代码 浏览器缓存工具封装 在前端开发中,经常会遇到需要缓存数据的情况,例如保存用户的登录状态、缓存部分页面数据等 但有时候需要缓存一些复杂的对象,例如用户信息对象、设置配置等。…

cache.ts缓存工具

  • 浏览器缓存工具封装
    • 实现
    • 使用方法示例
    • 代码

浏览器缓存工具封装

在前端开发中,经常会遇到需要缓存数据的情况,例如保存用户的登录状态、缓存部分页面数据等

  • 但有时候需要缓存一些复杂的对象,例如用户信息对象、设置配置等。直接使用原生浏览器缓存API存储这些对象时需要手动进行JSON序列化和反序列化操作,过程相对繁琐
  • 为了方便管理和操作浏览器的本地缓存和会话缓存,所以封装一个通用的工具类来处理这些操作

实现

创建了一个名为Cache的工具类,该类具有以下方法:

  • constructor(type: CacheType): 构造函数,根据传入的CacheType参数选择使用localStorage还是sessionStorage作为底层存储。
  • setCache(key: string, value: any): 将指定的键值对存储到缓存中。如果value不为空,则将其转换为JSON字符串并存储。
  • getCache(key: string): 根据键获取缓存中存储的值。如果值存在,则将其解析为对应的JSON对象并返回。
  • removeCache(key: string): 根据键从缓存中移除相应的数据。
  • clear(): 清空缓存中的所有数据。

定义了一个枚举类型CacheType,用于表示缓存类型,包括LocalSession

使用方法示例

import { localCache, sessionCache } from 'cache.ts';// 存储数据到本地缓存
localCache.setCache('username', 'John Doe');
sessionCache.setCache('isLoggedIn', true);// 从本地缓存获取数据
const username = localCache.getCache('username'); // 'John Doe'
const isLoggedIn = sessionCache.getCache('isLoggedIn'); // true// 移除数据
localCache.removeCache('username');
sessionCache.removeCache('isLoggedIn');// 清空整个缓存
localCache.clear();
sessionCache.clear();

使用案例代码解析:

  1. 首先直接导入了封装的cache.ts工具类中的localCache和sessionCache实例。这些实例已经预先配置好了,无需再次手动构造。

  2. 接下来,通过调用setCache方法向本地缓存和会话缓存中存储数据。例如,我们使用localCache.setCache(‘username,John Doe’)`将用户名信息存储到本地缓存中,sessionCache.setCache(‘isLoggedIn’, true)将登录状态存储到会话缓存中。

  3. 然后,通过调用getCache方法从缓存中获取数据。例如,使用localCache.getCache(‘username’)可以获取存储在本地缓存中的用户名信息,并将其赋值给变量username。类似地,使用sessionCache.getCache(‘isLoggedIn’)可以获取存储在会话缓存中的登录状态,并赋值给变量isLoggedIn。

  4. 如果需要移除特定的缓存数据,可以使用removeCache方法。通过传入相应的键,例如localCache.removeCache('username'),我们可以将存储在本地缓存中的用户名信息移除。

  5. 如果希望清除整个缓存,可以使用clear方法。例如,通过调用localCache.clear(),可以清空本地缓存中的所有数据。类似地,使用sessionCache.clear()可以清空会话缓存。

代码

enum CacheType {Local,Session
}class Cache {storage: Storageconstructor(type: CacheType) {this.storage = type === CacheType.Local ? localStorage : sessionStorage}setCache(key: string, value: any) {if (value) {this.storage.setItem(key, JSON.stringify(value))}}getCache(key: string) {const value = this.storage.getItem(key)if (value) {return JSON.parse(value)}}removeCache(key: string) {this.storage.removeItem(key)}clear() {this.storage.clear()}
}const localCache = new Cache(CacheType.Local)
const sessionCache = new Cache(CacheType.Session)export { localCache, sessionCache }
http://www.tj-hxxt.cn/news/64208.html

相关文章:

  • 济南免费做网站360营销平台
  • 找个公司做网站需要注意什么谷歌seo排名工具
  • 网站开发数据库设计武汉seo搜索引擎
  • 网站友情链接怎么做百度做广告费用
  • dz论坛中英文网站怎么做推广平台网站
  • 企业常用系统各系统介绍优化设计三年级上册语文答案
  • 网站建设与管理教学视频下载店铺在百度免费定位
  • 网站开发vue版本是什么张雪峰谈广告学专业
  • ps免抠素材网站大全网站推广的基本方法有
  • 吉工之家找工作建筑工作360优化大师安卓手机版下载安装
  • 做网站全部乱码怎么办seo快速排名上首页
  • 有哪些网站有做网页用的小图片百度问问首页
  • 在线制图网seo外链工具软件
  • 电子商务网站怎么做整站seo教程
  • 我想创业做网站今天刚刚的最新新闻
  • 郑州郑东新区网站建设平台接广告在哪里接的
  • 自己做的网站如何放到微信宁波seo外包推广排名
  • 南山网站制作培训网登录入口
  • 荔湾区做网站公司网站优化培训班
  • 怎么做网站扫码支付卖友情链接赚钱
  • WordPress搭建美国网站活动策划方案
  • 淄博网站建设多优化推广网站淄博
  • 前端后端分别是什么意思seo排名优化培训价格
  • 做公司网站的目的是什么怎么开展网络营销推广
  • 如何用网站做苹果app华为手机软文范文300
  • 网站营销策划公司营销方案怎么写模板
  • 做冷库的网站免费建站平台哪个好
  • wordpress更改绑定域名裤子seo关键词
  • 保定市清苑区网站建设店铺数据分析主要分析什么
  • 网站伪静态全站伪静态中文域名注册官网入口