- 博客(34)
- 问答 (1)
- 收藏
- 关注
原创 mint-ui Picker 显示异常
最近一个老项目页面显示异常,使用mint-ui Picker显示异常,直接显示成了 数据对象,而不是具体travelName 字段。
2024-11-01 16:41:13 592
原创 页面跳转不刷新 histoy.go hisroty.back不生效
现象1使用window.open 的方式打开一个页面,点击页面左上角的返回按钮,没有任何反应(左上角返回逻辑,使用 histoy.go(-1)或者hisroty.back())现象2点击页面跳转,打开了新的tab页签,点击返回按钮不生效(左上角返回逻辑,使用 histoy.go(-1)或者hisroty.back())
2024-11-01 09:12:36 162
原创 iframe页面Storage数据共享
同一个浏览器窗口下,多个iframe页面,同域下,Storage 是共享(即 sessionStorage 和 localStorage),iframe 页面相互影响。最近开发使用了iframe做跨系统,跨页面交互,当前页面存在多个iframe页面,并且每个iframe链接,同域。有些iframe 页面会有报错提示。使用 http-server 启动 端口 3201。iframe(vue页面)具体加载逻辑,
2024-10-31 14:48:35 548
原创 axios竟态问题
在我们日常开发经常遇到一些竟态问题现象1表格分页,如果设置请求loading,先切换到分页第99页,迅速在又切换到第1页,最后列表显示的是第99页数据。原因由于第99页请求数据花费时间可能500ms,第1页数据只需要100ms,第1页数据请求比较快,第99页数据返回慢,所以第99页数据会覆盖第一页数据。现象2表单具有提交按钮,如果没有设置提交请求loading时,连续点击两次,就会触发两次表单提交原因请求没有做拦截,第一次请求没有结束,又能触发请求。
2024-10-29 23:02:24 336
原创 axios源码分析之请求adapter
从dispatchRequest.js 源码中我们可以看到 defaults 来源于 axios\lib\defaults\index.js 文件, 该文件导出了defaults对象,defaults.adapter 来源于getDefaultAdapter 返回的值,(即构造axios请求时传入的请求配置,包含headers,请求参数等),【注】axios\lib\adapters\adapters.js。【注】axios\lib\defaults\index.js。重写了 getAdapter 方法。
2024-10-29 20:33:40 529
原创 axios 如何取消请求
可以看到 源码中,判断是否有取消的理由(即reason),存在 就会执行 listener (即外部传入的onCanceled),给构造函数 CancelToken 原型上设置 unsubscribe 函数,用于删除指定的监听器。给构造函数 CancelToken 原型上设置 subscribe 函数,用于添加订阅 监听器。onCanceled 中 request.abort() 即为 XHR 取消请求的方法。执行 executor 函数,传入 cancel 函数(即取消函数)
2024-10-26 09:56:22 338
原创 认识css长度单位 px % em rem vh vw
目录长度单位px长度单位在日常的项目开发,在使用css样式进行时布局的时候,我们常常用到px、%、em这三个单位。CSS3开始,浏览器新增加了rem、vh、vw、vm等一些新的计量单位。利用这些新的计量单位能够开发出比较好的响应式页面,更大限度适应各种分辨率的终端,包括移动设备、触摸大屏等等。单位Value相对长度单位em、ex、ch、rem、vw、vh、vmin、vmax、%绝对长度单位cm、mm、in、px、pt、pc长度单位众多,讲述px、%、em、rem、v
2021-04-02 20:34:35 1269
原创 setState
目录setStatesetState认知setState执行同步更新?setState使用方式setState简单栗子this.state = { count: 0,}incrementCount() { this.setState({ count: this.state.count + 1, });}handleIncrement = () => { this.incrementCount(); this.incrementCount(); this.
2021-04-01 09:18:42 1294 2
原创 Promise
目录Promise常用用法延时执行异步加载图片AJAX操作方法Promise.prototype.thenPromise.prototype.catchPromise.prototype.finallyPromise.allPromise.racePromise.resolvePromise.rejectPromise 所谓 Promise,简单来说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个 异步操作)的结果。从语法上来说, Promise 是一个对象,从它可以获取异步操作的消息。 P
2021-03-31 20:13:43 1221
原创 htmt5 data-* 属性
目录data- 属性介绍HTML5 Dataset 存储的例子data- 取值和设值jquery 操作data-data- 属性介绍新的HTML5标准允许你在普通的元素标签里,嵌入类似data-*的属性,来实现一些简单数据的存取。它的数量不受限制,并且也能由javascript动态修改,也支持CSS选择器进行样式设置。这使得data属性特别灵活,也非常强大。有了这样的属性我们能够更加有序直观的进行数据预设或存储。HTML5 Dataset 存储的例子为一个元素分配data属性存储数据,例如这是一个s
2021-03-30 22:30:51 1329 1
原创 http缓存
目录前言强制缓存ExpiresCache-Control协商缓存Last-Modified与If-Modified-SinceEtag与If-None-Match缓存的优点不同刷新的请求执行过程总结浏览器发起请求缓存字段前言 浏览器缓存是浏览器在本地磁盘对用户最近请求过的文档进行存储,当访问者再次访问同一页面时,浏览器就可以直接从本地磁盘加载文档。浏览器缓存优点:减少冗余的数据传输减少服务器负担加快客户端加载网页的速度 在浏览器第一次发起请求时,本地无缓存,向web服务器发送请求,服务
2021-03-30 22:11:07 1456 1
原创 Ajax
目录原生ajax请求原生GET请求原生POST请求Jquery版Ajax$.ajax()$.get()$.post()load()方法serialize()方法Ajax跨域jsonp解决跨域CORS跨域资源共享document.domain原生ajax请求注:ActiveXObject(“microsoft.XMLHttp”) 判断是否为IEfunction ajax(url){ var xhr = window.XMLHttpRequest ? new XMLHttpRequest(
2021-03-30 21:53:06 1208 1
原创 js数据结构
数据结构(js)基本数据类型NumberStringBooleanUndefinedNullSymbol引用数据类型ObjectArrayFunction基本数据类型NumberStringBooleanundefinedNullSymbol (es6)Number数字类型,表示数据的整数和浮点数。某些语言中也称为“双精度值”。String字符串可以有单引号、双引号表示。字符串是不可变的,一旦创建,值就不能改变要改变某个变量保存的字符串,首先要销毁原来的字符串,然后于用另一个包含
2021-03-30 19:31:41 1400 1
原创 canvas微信图片生成海报
前言之前在做项目的时候需要做一个生成海报的功能,然后选择html2canvas生成海报,使用html2canvas遇到了微信图片跨域的问题。现象使用图片来源于微信 https://mp.weixin.qq.com/cgi-bin/showqrcode这里的图片。在调用canvas.toDataURL方法的时候出错,发现是因为跨域问题。 html2canvas(this.canvasContent, {}).then( (canvas)=> { // toImage
2021-03-24 14:27:17 273 1
原创 阿里云服务器安装jdk+ tomcat
阿里云轻量应用服务器 jdk tomcat mysql本人是菜鸟一枚,由于学习兴趣购买了阿里云的学生服务器,由于之前对此一无所知,不知道怎么安装jdk tomcat mysql,遇到很多坑,所以写了这篇博客。下面就是我的安装配置过程。安装rz/sz命令使用的yum安装,rz命令用于本地上传文件到服务器,sz从服务器上下载文件到本地yum install lrzsz1、安装配...
2018-09-08 21:16:56 2010 7
空空如也
http强缓存如何判断过期的
2021-03-31
TA创建的收藏夹 TA关注的收藏夹
TA关注的人