关于taro框架,taro框架作者这个很多人还不知道,今天怡怡来为大家解答以上的问题,现在让我们一起来看看吧!
taro框架 taro框架作者
taro框架 taro框架作者
1、小程序的设计并没有完全遵循 Web 规范,导致小程序生态和传统 Web 开发生态之间的割裂,海量的 Web 物料并不能直接用于小程序开发。
2、因而 Taro 在相当一段时间内生态都相对薄弱,UI 框架选择不多的问题更是深深困扰着开发者。
3、另一方面,业界有着存量的 H5 应用,中短期内 H5 应用适配到小程序端的需要还会存在。
4、我们希望能减少 H5 应用迁移到小程序端的成本,甚至能够直接运行在小程序端。
5、Taro 团队一直在思考如何限度地在小程序环境中复用 Web 生态,直到 Taro 3.0 诞生后,这种想法有了落地的可能。
6、下文将介绍基于 Taro 3.0 实现 H5 同构的思路与问题,以及我们尝试适配了三大移动端 UI 框架 WEUI 、 Ant Design Mobile 、 VantUI 的实验结果。
7、Taro 3.0 是一款重运行时的跨端框架,它通过模拟实现浏览器的 BOM 和 DOM API 实现了对 React、Vue 等 Web 开发框架的兼容。
8、既然已经有了浏览器环境的 BOM 和 DOM API,Taro 应用和 Web 应用之间的鸿沟在于小程序组件和 HTML 标签之间的异。
9、Taro3 的渲染数据流如下:前端框架 -> Taro DOM -> 小程序 dataHTML 标签和小程序组件的标签名、属性、是有异的,而前端框架无需感知这些异。
10、因此前端框架适配层、Taro DOM 层不需要改动,只要在 Taro DOM 序列化为小程序 data 这一步作映射即可。
11、HTML 标签相对小程序组件封装程度更低、功能更简单,可以看作是小程序组件的子集。
12、因此可以按一定的规则,把 HTML 标签映射为小程序组件,如:完整的标签名映射规则请看: RFC 附录一如果 HTML 标签的属性能在对应小程序组件的属性上找到对应,则进行映射,如:完整的属性名映射规则请看: RFC 附录二把 HTML 特有的在小程序端找到相似的进行映射,如:完整的映射规则请看: RFC 附录三前文介绍了我们会把 HTML 标签映射为小程序组件,但是 H5 应用中使用到的 CSS 标签选择器就会失效。
13、因此 Taro 使用了类名去进行模拟:Taro 提供两种内置的浏览器默认样式,可以直接引入生效:理想很美好,但现实却略显骨感。
14、即使 Taro 能实现 BOM、DOM API,支持使用 HTML 标签等,同构方案还是存在着一些框架层面抹平不了的异。
15、以下列举出若干主要限制:在 H5 中我们可以调用 DOM API 同步获取元素的尺寸:但是在小程序中,获取元素尺寸的 API 是异步的:因此不能兼容那些使用了同步 DOM API 去获取元素尺寸的组件。
本文到这结束,希望上面文章对大家有所帮助。