
前端
No Bug !
做难事,必有所得
展开
-
通过javascript进行unicode 与 UTF-8编码
javascript的字符集:javascript程序是使用Unicode字符集编写的。Unicode是ASCII和Latin-1的超集,并支持地球上几乎所有的语言。ECMAScript3要求JavaScript必须支持Unicode2.1及后续版本,ECMAScript5则要求支持Unicode3及后续版本。所以,我们编写出来的javascript程序,都是使用Unicode编码的。UTF-8UTF-8(UTF8-bit Unicode Transformation Format)是一种针对Uni.转载 2020-10-19 13:57:27 · 1894 阅读 · 0 评论 -
vue-cli项目发布新版本,微信缓存了旧版本文件,导致页面白屏
案发小现场小前端加班加点的终于把当前迭代的东西做好,并且无bug的通过测试,心情美滋滋。非常自信的更新到了生产环境。不到半小时的时间,大领导走到前端部门吼道:“怎么线上页面挂了”。我默默打开手机一看,不是正常么,没有挂啊。事后得知部分用户才会出现白屏问题,什么情况下会复现,我就不得而知了,有知道的小伙伴可以留言相告。问题描述:vue-cli项目线上发布了新版本后,部分手机微信,出现页面白屏或者点击页面无法交互了。问题解析:微信缓存了旧版本的文件,导致文件404。解决方案:ps:之前看过很多方案,全原创 2020-06-12 11:38:20 · 1608 阅读 · 1 评论 -
vscode前端常用插件推荐
vscode是微软开发的的一款代码编辑器,就如官网上说的一样,vscode重新定义(redefined)了代码编辑器。当前市面上常用的轻型代码编辑器主要是:sublime,notepad++,editplus,atom这几种。比起notepad++、editplus,vscode集成了许多IDE才具有的功能,比起它们更像一个代码编辑器;比起sublime,vsco...转载 2019-04-09 17:02:20 · 1771 阅读 · 0 评论 -
移动端页面弹窗后,底部页面还能继续滑动解决方案
背景:页面本身具备滚动条,弹窗后,还是能继续滑动底部的页面,体验不好。解决方案一:弹窗后将底部页面设置overflow:hide;当弹窗结束后又重新设置回overflow:auto/scroll。这个方案大家都比较熟悉,虽然能解决问题,但是又存在的另外一个问题。那就是但你页面浏览到底部的时候,你页面设置overflow:hidden;页面瞬间回到了顶部。这样的体验感觉也是够奇怪的了~所以我们还...原创 2019-05-20 17:51:43 · 4012 阅读 · 0 评论 -
nrm安装与介绍
原 nrm安装与配置 2018年03月06日 10:52:29 AZJ5201314 阅读数:13070 ...原创 2019-06-05 10:14:41 · 2105 阅读 · 0 评论 -
监听浏览器被切换到后台或者手机锁屏再次唤起事件
H5有一个事件叫 visibilitychange ,当浏览器的某个标签页切换到后台,或从后台切换到前台时就会触发该消息,代码如下:document.addEventListener("visibilitychange", () => { if(document.hidden) { // 页面被挂起 } else { // 页面呼出...原创 2019-06-28 14:20:23 · 6006 阅读 · 0 评论 -
解决微信浏览器页面可以随意拉伸,导致页面内部滚动条滚动体验不好的问题
很多情况,我们页面局部可以滚动,但是由于微信浏览器整个页面可以拉伸,导致页面内部的滚动体验不好。所以我们可以把整个页面的滑动事件给禁用掉,然后让页面的某一个区域可以正常的滑动,就可以达到我们理想的效果。具体实现法案如下: const overscroll = function(el) { el.addEventListener('touchstart', function() ...原创 2019-06-28 14:42:26 · 2545 阅读 · 1 评论 -
nuxt以按需引入组件的方式使用ui框架
这里不对nuxt进行一个介绍,我们这里只介绍下如何在nuxt下以按需引入方式,来加载我们所要的ui框架,如:vant-ui 、element-ui等。我们以vant-ui按需引入为例,在vant-ui官网中,按需引入步骤如下:1、npm i vant -S2、npm i babel-plugin-import -D3、.babelrc 中配置// 注意:webpack 1 无需设置 li...原创 2019-04-08 12:27:59 · 6072 阅读 · 3 评论 -
js根据数组中对象的某个属性进行排序
js数组排序大家会想到sort()方法,是的今天我们也是用该方法来实现数组中是对象,根据对象中的某一个属性进行数组的排序。上代码: let arr = [ {name: '张三',age: 18}, {name: '李四',age: 9}, {name: '王五',age: 28} ] const handle = (prop...原创 2019-01-10 10:35:58 · 6567 阅读 · 3 评论 -
Symbol是什么
Symbol的诞生,也就是Symbol存在的意义之前我们的对象属性的数据类型都是字符串,没有其他的了。所以会导致属性名重复,导致属性值被覆盖的情况。比如,你使用了一个他人提供的对象,但又想为这个对象添加新的方法,在添加的操作就很容易覆盖了原有的方法。所以需要一个独一无二的数据类型来完成这个使命。所以Symbol出来主持大局了。Symbol的介绍1、唯一性Symbol这个英文单词表示...原创 2018-05-15 18:19:13 · 13750 阅读 · 0 评论 -
cnpm安装报错
解决方法: 1、注册模块镜像npm set registry https://registry.npm.taobao.org2、node-gyp 编译依赖的 node 源码镜像npm set disturl https://npm.taobao.org/dist3、清空缓存npm cache clean --force4、正常安装npm insta...原创 2018-06-24 19:26:59 · 5959 阅读 · 0 评论 -
javascript小数点的四则运算精度丢失处理
js在进行小数点的四则运算,结果可能会出现有偏差,看一下几个例子: console.log(0.1 + 0.2); //0.30000000000000004 console.log(-0.09999999 - 0.00000001); //-0.09999999999999999 console.log(0.012345 * 0.000001); //1.2344999999999999...原创 2018-12-07 21:56:20 · 868 阅读 · 0 评论 -
服务端与浏览器cookie
大家都知道cookie的作用很大,因为http是无状态协议,很多情况我们都是通过设置cookie,来实现业务上的需求,如登录。只是说不同的技术方案和不同的业务需求,我们的对cookie的操作有所差别,但都是基于cookie。服务端和前端均能对cookie进行设置,但是涉及隐私数据,还是建议由后端同学进行操作。下面描述的是两个问题:1、服务端向客户端设置cookie失效2、客户端向服务端请求数据...原创 2018-12-05 15:26:58 · 1186 阅读 · 0 评论 -
简单理解javascript原型链
js的原型链是剪不断理还乱,下面我们用简单的表达式,来理一理他们之间的继承关系: Object.prototype = null; //原型链顶端为null Function.prototype = new Object.prototype; Array.prototype = new Object.prototype; Boolean.prototype ...原创 2018-12-12 15:20:48 · 320 阅读 · 0 评论 -
js数组去重
js数组去重的是方法很多,网上一搜一大堆,但是都是要对数组进行各种遍历来实现。这里就分享一种快捷的素组去重方法,使用的是es6的Set,非常简单就实现数组去重。只要两步,如下:const arr = [1,2,3,1,2,3]; //需要去重的数组const set = new Set(arr); // (第一步)const handleArr = [...set]; //或者 Ar...原创 2018-12-19 16:14:36 · 168 阅读 · 1 评论 -
浏览器上禁止用户用调试方式打开页面
今天分享一个有趣的东西,我们浏览器可以通过F12或者鼠标右键的形式打开html页面,然后就可以看到页面的的信息,如dom结构,加载文件、请求信息等。那有没有办法禁止掉这一行为呢?要相信方法总比问题多,哈哈~分析:使页面进入调式模式的方法有哪些?1、按F122、鼠标右键,然后。。。3、提前打开浏览器处于调试模式,然后输入要调试的地址通过分析我们做出相对应的处理方法即可:步骤一:禁掉F12...原创 2019-01-03 17:40:24 · 5601 阅读 · 1 评论 -
js的节流和防抖
在项目开发过程中,我们通常会遇到这种需求,需要对某一行为进行js方法监听并且做出相应的业务处理,但是该行为变化的频率有可能是非常的频繁的,比如滚动条滚动、input框数值变化等。我们都知道一个web项目性能很重要,性能好的项目能给用户留下好的印象,否则用户就会很自然的放弃这个应用,到那时我们的开发出来的东西,已经没有什么很大的价值了,因为不被认可。好了bb完一堆废话,我们进入正题。今天要说的就...原创 2018-12-19 10:21:36 · 287 阅读 · 0 评论 -
正则对象的lastIndex属性
今天在写一个循环里面,通过正则方法test()来验证字符串,遇到了一个坑。在此分享一下采坑过程,也给自己加深个印象。贴上我的一部分代码:var str1 = '我是在测试';var p = /[\u4E00-\u9FA5]/g; //匹配中文正则var arr = str1.split('');for(var i = 0; i < arr.length; i++) { ...原创 2018-04-19 16:36:50 · 562 阅读 · 0 评论