Taro Next采用全运行时的模式的主要因素是什么呢?



  • Hi 我有一些疑问,从半运行时到全运行时的转变,是主要因为什么因素呢?是因为原先半运行时的模式特别难以维护吗?我的理解是新的模式对性能的影响是比较大的,特别是初次加载时页面渲染到完整显示的时间应该明显加长。我的理解有错吗?是不是因为小程序的view标签其实也是在逻辑层的数据,同样需要通过JS bridge进行传递到视图层进行渲染,所以实际上对渲染时间的影响其实是比较小的呢?谢谢!



  • @aeroww 可以看我们的博客咯 https://nervjs.github.io/taro/blog 还有公众号 「Taro 社区」以发布的文章为准咯。
    Q:从半运行时到全运行时的转变,是主要因为什么因素呢?

    A: 主要是因为开发体验更好了吧:

    • 不限制语言、语法
    • 更快的运行速度
    • 更快的构建速度和 source-map 支持

    除了以上,还有就是开发者更容易参与。

    Q:是因为原先半运行时的模式特别难以维护吗?我的理解是新的模式对性能的影响是比较大的,特别是初次加载时页面渲染到完整显示的时间应该明显加长。我的理解有错吗?
    A:原先「实际上 Taro 有大量的 Commit 都是为了更完善的支持 JSX 的各种写法。」,有个梗说「如果你使用 Taro 开发感觉 Bug 少,那说明你的 React 代码写得很规范。」(引自:https://nervjs.github.io/taro/blog/2020-01-02-gmtc )。
    关于性能「为了解决这个问题,Taro 从服务端渲染受到启发,在 Taro CLI 将页面初始化的状态直接渲染为无状态的 wxml,在框架和业务逻辑运行之前执行渲染流程。我们将这一技术称之为预渲染(Prerender),经过 Prerender 的页面初始渲染速度通常会和原生小程序一致甚至更快。」(引自:https://nervjs.github.io/taro/blog/2020-02-13-taro-next-alpha)文档里也有预渲染的内容,可以看看咯。

    以上是小助手帮你摘录的,可以看看相应的文章咯。


登录后回复