lodash之throttle和debounce的理解
lodash是一个很不错但是很重的类库,它集合了很多实用但不常用的方法。这里主要介绍下我对throttle(节流)和debounce(防抖)的理解。项目底层主要是uni做的app,因为在安卓机或者低版本的ios手机上,用户点击某个按钮转入下个页面的时候,可能会有100~200的延迟。这就导致一些用户手抖的时候会多点一次。所以需要用到防抖-debounce
lodash是一个很不错但是很重的类库,它集合了很多实用但不常用的方法。这里主要介绍下我对throttle(节流)和debounce(防抖)的理解。项目底层主要是uni做的app,因为在安卓机或者低版本的ios手机上,用户点击某个按钮转入下个页面的时候,可能会有100~200的延迟。这就导致一些用户手抖的时候会多点一次。所以需要用到防抖-debounce
html2canvas与vue-qr共同作用下产生的无法载入图片的问题,其实是一个小问题,只是因为想太多了,所以纠结了几乎一天时间
【超硬核】改写cordova代码结合css是的安卓支持透明状态栏,兼容各异形屏幕!通知兼容不支持safe-area-inset-*的浏览器内核
vue-cli单页应用与viewport-units-buggyfill的结合,解决safari下100vh实际大于浏览器高度的问题。
经常会遇到有用户反应分享功能分享没得到返利,xxx登录失败,这种莫名其妙的错误。明明上线之前内部做了多种测试。这种软错误是最难修改的。所以就引入了鹅厂的badjs。具体服务端安装过程就不过多讨论了。根据文档,引入后初始化即可使用。因为badjs重写了window.onerror的方法。BJ_REPORT.init({id: 1})但是在vue-cli下。在vue内的错误或者警告都是以try的形式抛出,也就是并不会从onerror这个方法经过。
腾讯对微信尤其是安卓版本的内置浏览器内核做了一点点小处理,在X5内核下,播放会强制全屏,如果需要进行边视频边互动下则无法实现。老夫无论使用百度或者是科学上网google都没有解决办法,就连腾讯开发者论坛内相关帖子也都做了删除处理。后面发现,如果要实现小窗播放,只需要把video转化为html5模式,转化方法如下。
sprite图 CSSSprites在国内很多人叫css精灵,是一种网页图片应用处理方式。它允许你将一个页面涉及到的所有零星图片都包含到一张大图中去,这样一来,当访问该页面时,载入的图片就不会像以前那样一幅一幅地慢慢显示出来了。对于当前网络流行的速度而言,不高于200KB的单张图片的所需载入时间基本是差不多的,所以无需顾忌这个问题。
之前在做分页的时候经常会遇到一个问题,通过URL传递分页参数会导致页面加载过慢,页面有明显刷新的体验。而通过ajax访问虽然仅仅进行了局部刷新,但是用户很难直接通过 URL到达自己想要的页数,或者筛选的结果页面;用户通过浏览器返回也无法回到上一个页面对应的页码。URL有一个属性叫hash,中文名称哈希。location是javascript里边管理地址栏的内置对象,比如location.href就管理页面的url,用location.href=url就可以直接将页面重定向url。