有点is
more名奇妙
青山不改,绿水长流。
展开
-
vue项目中,el-input type=“number“可以输入字母e . -的问题解决
input的v-model修改为v-model.number,type修改为tel,input事件用字符串的replace()方法将非数字的内容替换为空即可,然后input就只可以输入正整数了。原创 2022-12-29 17:07:16 · 3337 阅读 · 1 评论 -
js延迟加载的六种方式
把js外部引入的文件放到页面底部,来让js最后引入,从而加快页面加载速度例如引入外部js脚本文件时,如果放入html的head中,则页面加载前该js脚本就会被加载入页面,而放入body中,则会按照页面从上倒下的加载顺序来运行JavaScript的代码所以我们可以把js外部引入的文件放到页面底部,来让js最后引入,从而加快页面加载速度3.上述方法2也会偶尔让你收到Google页面速度测试工具的“延迟加载javascript”警告。所以这里的解决方案将是来自Google帮助页面的推荐方案。原创 2022-12-28 16:07:12 · 7636 阅读 · 2 评论 -
跨域时发送post请求 出现了两次请求
服务端在接收到预检请求后,根据资源权限配置,在response-header头部加入access-control-allow-headers(允许跨域请求的请求头)、access-control-allow-methods(允许跨域请求的请求方式)、access-control-allow-origin(允许跨域请求的域)。总结:只要是带自定义header的跨域请求,在发送真实请求前都会先发送OPTIONS请求,浏览器根据OPTIONS请求返回的结果来决定是否继续发送真实的请求进行跨域资源访问。原创 2022-12-28 14:53:45 · 1272 阅读 · 0 评论 -
前端性能优化
等到B运行结束,将结果返回到A,B的调用帧才会消失。它有一个很实用的特点,当请求把一个DocumentFragment节点插入文档树时,插入的不是DocumentFragment自身,而是它的所有子孙节点,即插入的是括号里的节点。注意,只有不再用到外层函数的内部变量,内层函数的调用帧才会取代外层函数的调用帧,否则就无法进行“尾调用优化”。尾调用由于是函数的最后一步操作,所有不需要保留外层函数的调用帧,因为调用位置、内部变量等信息都不会再用到了,只要直接用内层函数的调用帧,取代外层函数的调用帧就可以了。原创 2022-12-28 11:56:51 · 180 阅读 · 0 评论 -
为什么同一张图png反而比jpg小?
1、png格式的体积小,在网络通讯里受到了,保证了图片清晰。2、PNG文件采用了,可以获得很高的压缩比,也不会损失数据。3、它利用了,标记了出现的数据,而且对图像的颜色没有影响也不会有损失。4、还优化了网络传输显示,PNG图在浏览器里都是用采流式,因此可以连续的输出。原创 2022-12-28 11:38:34 · 2542 阅读 · 0 评论 -
Git教程:! [rejected] master -> master (fetch first)解决办法
Merge branch 'master' of github.com:Or-Coal/toutiao-m# Please enter a commit message to explain why this merge is necessary,# especially if it merges an updated upstream into a topic branch.## Lines starting with '#' will be ignored, and an empty messa原创 2022-12-12 09:35:54 · 272 阅读 · 0 评论 -
css transform导致字体像素模糊的问题解决办法
直接给translate的Y轴偏移设为绝对单位,此时也是不会模糊的,此时不管你元素高度是奇数还是偶数 transform: translate(-50%,-201px);原本字体的父级为列子中的popup-box,我们可以看到该父级是参与定位偏移的,所以才会影响到里面的字体,因此我们让字体套多一层父级即可。偏移元素达到定位的效果,但是相继出现的是,如果元素内部有字体的话,会出现模糊的问题。3.给translate的Y值偏移设为绝对单位。1.给字体加多一个父级。原创 2022-10-28 21:41:18 · 1989 阅读 · 0 评论 -
前端大文件上传如何实现(文件切片)
但是大文件的上传是一个特殊的情况: 大文件上传最主要的问题就在于:在一个请求中,要上传大量的数据,导致整个过程会比较漫长,且失败后需要重头开始上传。说明:考虑到如果上传一个超大文件,读取文件内容计算 hash 是非常耗费时间的,并且会引起 UI 的阻塞,导致页面假死状态,所以我们使用 web-worker 在 worker 线程计算 hash,这样用户仍可以在主界面正常的交互。常见的软件应用中,前端/后端都会对一个请求的时间进行限制,那么大文件的上传就会很容易超时,导致上传失败。对象包含一个重要的方法。原创 2022-10-28 21:36:21 · 3787 阅读 · 0 评论 -
前端图片上传发现图片倒置解决方案 图片镜像效果实现
scale(scaleX, scaleY):通过在 x 轴乘以 scaleX、在 y 轴乘以 scaleY 来缩放图像。scaleX和 scaleY 的默认值都是 1.0。前端使用canvas将颠倒的图片进行旋转矫正。scale(-1,-1):水平垂直翻转。scale(-1,1):水平翻转。scale(1,-1):垂直翻转。scale(1, 1) :默认。通过scale调整方向即可。通过以下设置可实现图片翻转。原创 2022-10-28 21:21:18 · 622 阅读 · 0 评论 -
浏览器的缓存机制 优点 缺点 协商缓存和强缓存 浏览器缓存过程 如何判断强缓存是否过期
2.下一次加载资源时,先比较当前时间和上一次返回200时的时间差,如果没有超过cache-control设置的max-age,则没有过期,命中强缓存,不发请求直接从本地缓存读取该文件(如果浏览器不支持HTTP1.1,则用expires判断是否过期);2.协商缓存:向服务器发送请求,服务器会根据这个请求的request header的一些参数来判断是否命中协商缓存,如果命中,则返回304状态码并带上新的response header通知浏览器从缓存中读取资源;区别是强缓存不会发请求,协商缓存会发请求。原创 2022-10-27 22:42:38 · 666 阅读 · 0 评论 -
设置html按钮点击事件失效
pointer-events属性除了指示该元素不是鼠标事件的目标之外,值none表示鼠标事件“穿透”该元素并且指定该元素“下面”的任何东西。实现按钮上的点击事件失效。语法:pointer-events:auto| none | visiblepainted | visiblefill | visiblestroke |想要按钮不能点击可以通过设置按钮点击事件失效来实现;而在CSS中,可以使用pointer-events属性来实现点击事件失效。原创 2022-10-27 22:14:58 · 1743 阅读 · 0 评论 -
vue项目部署时路由加前缀
1.在config / index 文件里修改dev(npm run dev本地启动项目时)和build(npm run build 打包时)下的 assetsPublicPath:”/前缀”2.在npm run build打好的dist包里 ,/dist/config/index.js文件中修改 [‘domain’]=“/前缀” 也可以。router.js里:export default new Router({ base:”/前缀" , })给路由加前缀:而且路由模式用的是hash,原创 2022-10-27 21:52:14 · 2070 阅读 · 1 评论 -
video视频标签 自动播放autoplay 失效问题
问题: 在使用video标签的时候,给它设置了autoplay属性,发现没有什么效果;解决方式: 给video标签加上muted(静音)属性就可以自动播放了;原因: 谷歌浏览器和火狐浏览器现在都不支持非静音自动播放了。video标签设置autoplay(自动播放)无效。原创 2022-10-27 21:02:36 · 1965 阅读 · 0 评论 -
实例内两个方法,一个用普通函数,一个用箭头函数,创建实例后,this指向、创建实例时候普通函数和箭头函数不同、new内部的实现流程。
如果是普通函数方法,该方法会绑定在构造函数的原型上如果是箭头函数方法,该方法会绑定在构造函数上调用class中的方法,无论是箭头函数方法还是普通函数方法,方法中的this都指向实例对象。原创 2022-10-13 16:14:54 · 96 阅读 · 0 评论 -
loader 和 plugin 的区别是什么
Plugin可以扩展webpack的功能,让webpack具有更多的灵活性。在 Webpack 运行的生命周期中会广播出许多事件,Plugin 可以监听这些事件,在合适的时机通过 Webpack 提供的 API 改变输出结果。Webpack将一切文件视为模块,但是webpack原生是只能解析js文件,如果想将其他文件也打包的话,就会用到loader。所以Loader的作用是让webpack拥有了加载和解析非JavaScript文件的能力。loader比较单一就是用来加载文件。原创 2022-10-12 19:54:03 · 760 阅读 · 0 评论 -
token过期怎么办 无感刷新token
有一些项目token过期获取新的token时候,不止获取access_token,虽然refresh_token没有过期,也会获取,也就是说两个token都获取并更新存放在浏览器中。(1)可以通过响应拦截器或者全局前置守卫强制跳转登录页。原创 2022-10-10 16:23:04 · 2636 阅读 · 0 评论 -
常用git操作
git pull使用来自 GitHub 的对应远端分支的所有新提交更新你当前的本地工作分支(拉取)将指定分支的历史合并到当前分支。这通常在拉取请求(PR)中完成,但也是一个重要的 Git 操作。git commit -m"" 将文件快照永久地记录在版本历史中(提交)git push 将所有本地分支提交上传到 GitHub(推送)git merge 将远端跟踪分支合并到当前本地分支。输出指定commit的元数据和内容变化。下载远端跟踪分支的所有历史(展示两个分支之间的内容差异。列出当前分支的版本历史。原创 2022-10-08 19:16:55 · 232 阅读 · 0 评论 -
数组方法总结、vue组件通讯(父子,隔代,兄弟)、 如何封装组件、 axios 与ajax比较、对async await理解、 对媒体查询的理解、null和undefined区别
d)遇到复杂html时候 一套无法满足时 隐藏html显示htmlaxios 比 ajax对async await理解。原创 2022-10-08 16:37:43 · 93 阅读 · 0 评论 -
一个页面从输入url到加载的全过程?
首先会查看浏览器DNS缓存,没有就查询计算机本地DNS缓存,还没有就询问递归式DNS服务器(即网络提供商,一般这个服务器都会有自己的缓存,所以IP查询一般在这里完成),如果没有缓存,那就需要通过根域名和TLD域名服务器指到对应的权威DNS服务器找回记录,并缓存到递归式服务器,然后递归服务器在将记录返回给本地。如果节点需要依赖其他资源,如(图片,CSS等),便会调用网络模块的资源加载器来加载它们,但它们是异步的,不会阻塞当前DOM树的构建;到了服务器,就会通过相反的方式将数据一层一层的还原回去;.......原创 2022-08-29 19:50:55 · 512 阅读 · 1 评论 -
Vue有什么缺点?为什么Vue项目不利于SEO优化
3.不利于SEO优化,因为SEO是靠抓取文字,vue页面其实是什么文字也没有的,谷歌支持抓取ajax,而百度不可以。2.单页面应用(SPA),不支持Cookie + Session 登录。1.IE兼容性不好,最低兼容到IE8。原创 2022-10-08 11:06:26 · 2131 阅读 · 0 评论 -
jQuery(javascript) 与Vue有什么区别
1.jQuery根据业务逻辑操作DOM,注重实现过程,亲历亲为。vue根据Model数据变化驱动View视图的变化。Vue组件、打包压缩 => 单文件HTML页面,前后端分离(后端只负责API接口、前端实现视图逻辑)3.jQ需要配合后台服务器端渲染php/jsp/aspx,前后端不分离。2.jQ兼容性很好兼容到IE6,vue最低兼容到IE8。原创 2022-10-08 10:31:14 · 807 阅读 · 0 评论 -
webpack与vite对比
vite开箱即用,更加简单,基于浏览器esm,使得hmr更加优秀,达到极速的效果;webpack更加灵活,api以及插件生态更加丰富。webpack是bundle,自己实现了一套模块导入导出机制。vite是利用浏览器的esm能力,是bundless。:分析各个模块之间的依赖=>然后进行编译打=>打包后的代码在本地服务器渲染。:启动服务器=>请求模块时按需动态编译显示。模块规范来执行代码,不需要打包编译成。:模块以及模块依赖的模块需重新编译。:浏览器重新请求该模块即可。模块即可在浏览器运行。原创 2022-09-27 22:31:56 · 5224 阅读 · 0 评论 -
SEO指的是Search Engine Optimizatio
随着互联网使用者越来越多,如今网上已成为人们获取信息的主要渠道之一。如何使我们的网站在人们通过互联网搜寻信息时更容易被发现?SEO就是为此而生。SEO是搜索引擎优化的缩写,它是一种通过改进网站的内容和结构来使网站更加易于被搜索引擎收录和理解的过程。SEO指的是Search Engine Optimizatio,常用优化有:标签优化,内容优化,url优化,内链,外链。优化方法有很多,不同的优化方法对应不同的目标。原创 2022-09-27 19:44:17 · 198 阅读 · 0 评论 -
埋点介绍
实现前端监控的步骤为:前端埋点和上报、数据处理和数据分析。首要的步骤就是前端埋点和上报,也就是数据的收集阶段。数据收集的丰富性和准确性会影响对产品线上效果的判别结果。目前常见的前端埋点方法分为三种:代码埋点、可视化埋点和无痕埋点。下面一一介绍每一种埋点的方法。(1) 代码埋点代码埋点,就是以嵌入代码的形式进行埋点,比如需要监控用户的点击事件,会选择在用户点击时,插入一段代码,保存这个监听行为或者直接将监听行为以某一种数据格式直接传递给server端。原创 2022-09-26 13:47:11 · 201 阅读 · 0 评论 -
低代码 low-code
再往深一点儿看,低代码不只是少写代码而已:代码写得少,bug也就越少(正所谓“少做少错”),因此开发环节的两大支柱性工作“赶需求”和“修bug”就都少了;通过让大部分开发工作可以仅通过简单的拖拽与配置完成,低代码(包括零代码)显著降低了使用者门槛,让企业能够充分利用前面所提到的平民开发者资源。更重要的是,这个快的程度是颠覆性的:根据Forrester在2016年的调研,大部分公司反馈低代码平台帮助他们把开发效率提升了5-10倍。也就是说,不只是像传统开发平台一样“能”开发应用而已,低代码开发平台的重点是。原创 2022-09-23 14:24:50 · 401 阅读 · 0 评论