首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

原生组件和非原生组件的区别

组件

根据渲染类型 分两种组件

原生组件-微信客户端参与渲染

原生组建的渲染流程

在webview里边生成组件的占位元素(一块黑黑的东西)

计算布局,插入dom

以上两个步骤是由webview进行执行的,并没有渲染任何的内容。

与微信客户端进行跨县城的通信。

组建启动跨线程的通信,在屏幕相同的地方插入一块原生的区域。

渲染实际的内容。

如有布局改变,weiview会通知微信客户端进行渲染,更新布局。

非原生组件-webview渲染

原生组建问题

在scroll-view中原生组建video不会跟随列表滚动

视频下会出现一个黑色的占位区域

视频内容由微信客户端进行渲染却不会根据scroll-view的滚动而进行位置的更新

由跨线程的渲染机制导致,不同组建之间的数据无法进行同步

与非原生组件难以搭配使用。

无法控制层级,永远在页面的最上层。

css样式的限制

css动画无效(原生是由微信客户端渲染,而css是由webview进行渲染。)

原生组建优势

提高渲染的性能

扩展WebView的能力

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180624G1542H00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券