码迷,mamicode.com
首页 > 微信 > 详细

小程序 琐碎

时间:2019-08-27 14:25:12      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:运行   原理   移动   touch   过程   bsp   idg   交互   set   

微信小程序的原理

  小程序其实本质上来说也是一种单页面的应用,所有的页面渲染和事件的处理,都在一个页面内进行,但是又可以通过微信客户端调用原生的各种接口;

  功能上可以分为渲染层 webview 和 逻辑层 appService 两个部分;webview 用来展现 ui,appService 用来处理业务逻辑、数据及接口的调用;两个部分在两个进程中运行,通过系统层 JSBridge 实现通信,实现 ui 的渲染、事件的处理等;

 

为什么 setData 操作会很昂贵?

  频繁的用户交互效果在小程序上表现是比较卡顿的,比如页面上有两个元素 A 和 B;用户在 A 上做 touchmove 手势,要求 B 也跟着移动;一次 touchmove 事件的响应过程为: 1)、touchMove 事件从视图层 webview 抛给逻辑层 appService;2)、逻辑层处理 touchumove 事件,在通过 setDate 来改变 B 的位置;

  一次 touchmove 的响应需要经过两次的逻辑层和渲染层的通信以及一次渲染,通信的耗时比较大;

小程序 琐碎

标签:运行   原理   移动   touch   过程   bsp   idg   交互   set   

原文地址:https://www.cnblogs.com/mufc/p/11417994.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!