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

大连网站建站企业qq和个人qq有什么区别

大连网站建站,企业qq和个人qq有什么区别,北京市建设工程质量监督网站,小狗做爰网站需求:每个表格的分页大小 以本地缓存的方式存到浏览器本地,然后用户下次打开的时候 获取这个本地存储的值 如果没有就用页面默认的值,如果有 则先判断是不是有效的(是) 无效用默认 有效就用这个缓存值,需要区分是否为嵌入式页面 分析&#xf…

需求:每个表格的分页大小 以本地缓存的方式存到浏览器本地,然后用户下次打开的时候 获取这个本地存储的值 如果没有就用页面默认的值,如果有 则先判断是不是有效的(是) 无效用默认 有效就用这个缓存值,需要区分是否为嵌入式页面

分析:


1、存页大小的时候 需要考虑一下嵌入页面 const ancestors = location.ancestorOrigins;

如果这个数组有长度 就把第一个 拿出做隔离;比如打开页面之后 开始拼接key 比如规则页面 我就取 key=`calc_${ location.ancestorOrigins[0],}` 去取值;如果没被嵌入 location.ancestorOrigins的长度就是0 就取不到值 key就直接取`cacl_`

意思是比如 我列表嵌入到a网址 他会给a网站存一个页大小 嵌入到b网站会给b网站保持一个页大小 互不相干


2、后面我们把那个列宽度和排序字段 查询条件 也可以存到这里面,所以我们直接使用存对象的方式key:{}


直接封装工具函数(可直接复制使用) 

在项目src文件夹下面的工具函数文件夹utils下  直接新建localStorageUtil.js,写入以下代码:

// 工具函数,用于存取分页大小、其他数据
export const useLocalStorageData = (keyPrefix = '', defaultData = {}) => {const getCacheKey = () => {if (location.ancestorOrigins.length) {return `${keyPrefix}${location.ancestorOrigins[0]}`;}return `${keyPrefix}`;};const getCacheData = () => {const cacheKey = getCacheKey();const cacheData = localStorage.getItem(cacheKey);if (cacheData) {return JSON.parse(cacheData);}return defaultData;};const saveCacheData = (data) => {const cacheKey = getCacheKey();localStorage.setItem(cacheKey, JSON.stringify(data));};const getData = (key) => {const cacheData = getCacheData();if (cacheData[key]!==undefined) {return cacheData[key];}return defaultData[key];};const saveData = (key, value) => {const cacheData = getCacheData();cacheData[key] = value;saveCacheData(cacheData);};// 返回需要暴露的属性和方法return {getData,saveData,};};

页面引入使用:

import { useLocalStorageData } from '@/utils/localStorageUtil.js'
const defaultPageSize = 10//默认分页大小const { getData, saveData } = useLocalStorageData('calc_', {})//列表查询方法
function getCalcRules(RuleName: string, pageSize: number, currentPage: number) {api.calcRules.getCalcRules({ RuleName: RuleName, PageSize: pageSize, Page: currentPage }).then(res => {if (res != null && res[0] != null && res[0].status == 200) {totalData.tableData = res[0].data.recordstotalData.total = res[0].data.Total}})
}// 获取分页大小
const pageSize = ref(getData('pageSize') || defaultPageSize)
const currentPage = ref(getData('currentPage') || defaultcurrentPage)const handleSizeChange = (val: number) => {saveData('pageSize', val)// 分页getCalcRules(RuleName.value, val, currentPage.value)//获取页面表格数据
}
const handleCurrentChange = (val: number) => {// 分页getCalcRules(RuleName.value, pageSize.value, val)//获取页面表格数据
}
// 获取初始页面本地数据
function getinitLocalData() {const cachedPageSize = getData('pageSize')// 如果本地缓存中不存在分页大小,则保存默认值if (cachedPageSize === undefined) {saveData('pageSize', defaultPageSize)pageSize.value = defaultPageSize} else {pageSize.value = cachedPageSize}}
onMounted(() => {getinitLocalData()// 在获取到页码和页大小后,调用 getCalcRules 方法获取页面数据getCalcRules(RuleName.value, pageSize.value, currentPage.value)
})

如果以后还有表格搜索条件等数据需要缓存,可以按照上面关于pagesize的缓存和提取的方式进行缓存和提取

http://www.khdw.cn/news/25086.html

相关文章:

  • 网站建设的销售好做吗怎么优化关键词
  • 东城响应式网站建设普通话的顺口溜6句
  • 犀牛云网站建设怎么样seo搜索引擎优化名词解释
  • 网站建设公司上海做网站公司中国十大互联网公司
  • 牡丹江地区做网站的公司谷歌浏览器在线打开
  • 如何设计一个完整的网站网站关键字优化软件
  • 怎样收录网站微信seo什么意思
  • github 做网站关键词有哪些关联词
  • 国家住房与城乡建设部网站首页郑州网站制作选择乐云seo
  • 专业网站开发企业ui设计
  • 标签系统做的好的网站个人如何推广app
  • b2b网站建设优化哪家好重庆seo网站哪家好
  • 软件技术外包seo编辑是干什么的
  • 建站类平台排行榜百度云网页版登录入口
  • 优秀个人网站推荐seo排名点击工具
  • 成都龙泉建设网站最佳bt磁力猫
  • 企业百度网站怎么做免费b站推广网站在线
  • 无锡高端网站设计公司价格成都网站制作设计公司
  • seo网站推广推荐html网页完整代码作业
  • 漳州市城乡和住房建设局网站seo技术优化服务
  • 漳州优化网站建设百度关键字搜索排名
  • wordpress给用户发送邮件seo站长工具综合查询
  • 有没有公司做农副产品网站的千锋教育怎么样
  • 网站推广策划方案毕业设计张文宏说上海可能是疫情爆发
  • wordpress wplang哈尔滨seo优化软件
  • 金华英文网站建设百度旧版本
  • .课程网站建设与应用长沙网络推广只选智投未来
  • 重庆企业品牌网站建设营销型网站建设题库
  • 重庆网站目录seo人人网
  • 网站建设和优化的好处怎么自己做一个网站