小程序实现原理都是一样的。与传统的 H5 应用不同,小程序运行架构分为 webview 和 worker 两个部分。webview 负责渲染,worker 则负责存储数据和执行业务逻辑。
1.webview 和 worker 之间的通信是异步的。这意味着当大家调用 setData 时,大家的数据并不会立即渲染,而是需要从 worker 异步传输到 webview。
2.数据传输时需要序列化为字符串,然后通过 evaluateJavascript 方式传输,数据大小会影响性能。
小程序的本质还是通过jsbridge调用native端,原生端提供能力有差异,api上层封装的jsdsl不同,以及各个大厂开发的小程序本身封装的vue like语法不同
目前已知的小程序厂商有,微信,支付宝,头条,百度,京东等,建议做小程序开发使用taro等跨平台框架,效率更高