- 博客(12)
- 收藏
- 关注
原创 小程序启动优化
关于小程序的本质小程序的本质,我个人的理解,应该算是一种特殊的webview混合开发,小程序本质就是一个网页。原理是在平台APP中(例如微信),我们开发者所编写的代码,会放入webview项目中创建的安全的沙箱环境中运行,沙箱环境是通过web worker方式创建的。开发者的代码在web worker中执行,通过postMessage向主线程传递指令,主线程会提供渲染及API服务(API服务是APP提供的,主线程可以调用)。双线程方式(创建wev worker是直接创建一个线程)的主要特点就是对开发者的代
2021-02-04 11:02:51
419
原创 vue关于$attrs,$listeners,inheritAttrs的使用与想法
attrs,listeners,inheritAttrs一般用在父子组件传递中。$attrs当父组件传递给子组件的参数,子组件没有接受到的一部分(既没有props),那么子组件内就可以使用 $attrs 代表剩余部分的属性,子组件也可以通过 v-bind="$attrs" 传递给自己的子组件(既父组件的子组件的子组件)$listeners$listeners 代表给父组件传递给子组件的函数,父组件传递给子组件函数,子组件可以通过 v-on="$listeners" 传递给自己的子组件(既父组件的子组
2020-05-12 17:41:20
321
原创 Object.defineProperties() 方法使用感悟
Object.defineProperties() 方法会直接在一个对象上定义一个新属性,或者修改一个对象的现有属性,并返回此对象。对象都有属性,如何描述说明属性呢?使用 属性描述符 来描述对象里目前存在的属性描述符有两种主要形式:数据描述符和存取描述符。数据描述符是一个具有值的属性,该值可以是可写的,也可以是不可写的。存取描述符是由 getter 函数和 setter 函数所描述的属性。一个描述符只能是这两者其中之一;不能同时是两者。数据描述符和存储描述符都是对象,它们共享以下可选键值(默认值是
2020-05-08 19:58:07
1111
1
原创 小程序项目流程总结
1.项目简介此项目为专门为某旅游平台打造的一套系统,其目的是为了使得用户体验更加美好,运营人员更加轻松,淘汰旧的管理系统。设计团队成员有技术顾问大牛哥,产品经理猜猜,UI设计师爆炸,后台设计阿诠,前端设计本人,以及项目中后期加入的全栈社会康.项目后台使用MyBatis和Spring构建,由Maven进行资源管理。数据库使用MySQL,前端表现分为微信小程序及web端。目前微信小程序端已完成内测,...
2020-05-06 16:16:36
827
原创 前端设计模式感想
1.单例模式保证一个类只有一个实例,并提供一个访问它的全局访问点比如使用h5项目配合移动端平台使用的时候,需要有一个唯一的变量,或者说常量来表示项目处在哪个环境中,项目中业务根据这个常量的不同而展现不同的处理逻辑,那么这个时候我们可以在index.html中先使用常量表示环境,比如1,2,3,4可以表示微信小程序,支付宝小程序,iOSAPP.Android应用,因为这是在index.html中...
2020-05-06 15:30:00
248
原创 js页面密码锁
论后门的重要性:在与产品争论需求的过程中,我用鼠标在手机上面轻轻的点了几下,线上项目就启动超级模式,所有人都大惊失色,那一刻我的气势提升到了顶端,所有问题都不再是问题。。。开个玩笑,我脑子里面冒出这个想法是做移动端项目的时候,Hybrid开发模式,很多问题可能在本地浏览器调试没有问题,但是到了平台内部,比如原生APP,小程序里面就可能出问题,这时候我们怎么才能发现并解决问题呢,我们一般采用vc...
2020-05-06 15:27:31
819
原创 js数组原型方法简单介绍
Array.isArray()用于确定传递的值是否是一个ArrayArray.prototype.concat()方法用于合并两个或多个数组,此方法不会更改现有数组,而是返回一个新数组Array.prototype.flat()方法会按照一个指定的深度递归遍历数组,并将所有元素与遍历得到的子数组的元素合并为一个新数组返回。例子:array.flat(Infinity)//使用 Infinit...
2020-05-06 15:22:34
369
原创 js String原型对象方法简单总结
请注意区分 JavaScript 字符串对象和基本字符串值(对于 Boolean 和 Numbers 也同样如此)字符串字面量(通过单引号或双引号定义)和直接调用String方法(没有通过 new 生成字符串对象实例)的字符串都是基本字符串。JavaScript会自动将基本字符串转换为字符串对象,只有将基本字符串转化为字符串对象之后才可以使用字符串对象的方法。当基本字符串需要调用一个字符串对象才...
2020-05-06 15:17:42
1165
原创 前端数据处理
any application that can be written in JavaScript, will eventually be written in JavaScript" – by Jeff Atwood事情的起因是这样的,业务中有一个详情比价页面,需要爬虫抓取数据传给前端展示给用户,因为爬虫抓取数据是需要一定的时间的,以往的作法是做ajax的简单的长轮询,每隔2秒就请求一次...
2020-05-06 15:07:43
414
原创 移动端h5首屏加速
为什么我的手机白屏了?是不是你们APP有问题???-某位不愿意透露姓名的用户反馈目前,我们团队的h5移动端项目皆采用vue2.0框架进行开发,由于SPA的特性,导致首页加载的时候会比平常页面加载的速度稍微慢点,在网络不好的极端情况下可能会导致类似网页白屏的情况,就会影响用户的体验,我们团队采用了多种办法,绞尽脑汁,头发掉光,终于能够控制在正常wifi情况下,首页加载速度<1s,下面拿我...
2020-05-06 15:03:16
433
原创 模拟手写函数系列-bind,call,apply,new......
Function.prototype.myBind = function(context = window){ const _this = this const args = [...arguments].slice(1) return function F(){ if(this instanceof F){ return new ...
2020-03-10 19:31:52
174
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人