由一个bug引发对axios的刨根问底
📒背景简述:
在做一个vue技术栈的h5项目的时候,出现了这么一个bug,不同路由下的请求接口是同一个,如果在网络较慢的情况下进行路由的快速切换就会导致两个路由下的数据混在一起😟😟😟。以下是从解决这个bug引发的一系列思考😇
一、问题现象:
网络调为mid-tier mobile后,快速切换路由会发现第二个路由(待客户签署)的数据和第一个路由(起草协议)数据发生了累加:
二、解决效果:
添加了路由切换后取消请求的功能后数据正常:
三、具体实现方式:
初始入口文件中通过axios生成cancelToken:
axios的拦截...
浏览器相关浏览器内核相关(进程和线程):https://imweb.io/topic/58e3bfa845e5c13468f567d5
细说浏览器缓存什么是浏览器缓存? 概念:浏览器缓存(Browser Caching)是为了节约网络的资源加速浏览,浏览器在用户磁盘上对最近请求过的文档进行存储,当访问者再次请求这个页面时,浏览器就可以从本地磁盘显示文档,这样就可以加速页面的阅览。 作用:加速页面的阅览 分类:分为协商缓存和强制缓存两类。 存储位置:
怎么用?原理是什么?
git相关.gitignore忽略文件无效.gitignore文件只有在未进行git操作之前才有效,所以对已经执行过add、commit或者push的文件夹或者文件进行ignore是无效的,需要去除git track(跟踪),去除的方法
js基础知识点字符串截取
substr(start,length)–被逐渐废弃的api,不建议使用
substring(start,end) start或者end为负变为0;start>end位置互换
slice(start,end) start、end为负变为length+start
http协议相关http响应状态200:服务器正常返回。204:服务器正常返回,但是没有响应内容(no-content),一般表示资源更新,但是客户端不需要离开本页或者不需要改变显示的资源,应用于put请求。可缓存,并且响应中包含Etag头。
301:永久重定向302:暂时重定向304:读取本地缓存的文件
400:请求参数有误,请求字段不被允许、请求方法错误等401:未授权请求,缺少服务器信任证书,服务器会返回信息给客户端如何添加信任证书,可添加信任证书进行访问。
403:请求成功被接收,但是没有权限访问该资源,被服务器拒绝访问,永久拒绝。404:找不到资源
500:服务器内部错误502...
移动端问题移动端0.5像素问题0.5像素不能确切显示的原因有以下两点:
高清屏(Retina) 中控制显示的最小的物理单元包括4个基本的像素点,而普通屏幕1个点像素就是1个物理像素单元。所以在高清屏(Retina)出来之前,就算我们在css中写 0.5px,对于显示屏幕也是不识别的。
不同浏览器对0.5px支持情况不一样(例如chrome不支持0.5px、Safari支持)解决方式1234567891011121314p { position:relative;}p:after { content:' '; display: blo...
js宏任务和微任务https://www.jianshu.com/p/4c304fc2d79fhttps://juejin.im/post/5b498d245188251b193d4059https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Promisehttps://juejin.im/post/5c0397186fb9a049b5068e54
npmnpm中锁的问题
查看安装过的npm包
当前文件夹下的包:npm ls –depth 0
全局安装的包:npm ls -g –depth 0
js之事件容易忽略的点input和change事件区别input事件在用户输入时候就触发,但是通过js改变值、或者选择值时候不能触发;
onchange事件只有在元素失去焦点时候触发。