diff --git a/docs/performance.md b/docs/performance.md index 1cfefa947ebacf6e641d1edd8557b02d29f12017..80818444d0b7da049a77d7130baa7e6fbc0186a0 100644 --- a/docs/performance.md +++ b/docs/performance.md @@ -6,13 +6,17 @@ 页面加载时,联网和逻辑运算在逻辑层(Android是v8,iOS是jscore),然后会传递数据给视图层渲染。这种通信有损耗。同样,在视图层操作时,比如拖动页面,要实时传递事件给逻辑层接收,也是有损耗的。 2. App端渲染引擎可切换 + 在App端,nvue页面的视图层是由原生引擎渲染的,vue页面的视图层是os的webview渲染的。 uni-app的webview渲染经过优化,性能也足够好。它比nvue弱的地方主要在于启动速度和可左右拖动的长列表。 3. app-vue和小程序的数据更新,分页面级和组件级 + 对于复杂页面,更新某个区域的数据时,需要把这个区域做成组件,这样更新数据时就只更新这个组件,否则会整个页面的数据更新,造成点击延迟卡顿。 这就是自定义组件编译模式的特点。 + 比如微博长列表页面,点击一个点赞图标,赞数要立即+1,此时这个点赞图标一定要做成组件。否则这个+1会引发页面级所有数据的更新。 + app-nvue和h5不存在此问题。造成差异的原因是小程序目前只提供了组件差量更新的机制,不能自动计算所有页面差量。 #### 优化建议