微信小程序 原生组件说明

Posted java1234_小锋

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信小程序 原生组件说明相关的知识,希望对你有一定的参考价值。

完整微信小程序(Java后端) 技术贴目录清单页面(必看)

原生组件

小程序中的部分组件是由客户端创建的原生组件,这些组件有:

原生组件同层渲染

同层渲染是为了解决原生组件的层级问题,在支持同层渲染后,原生组件与其它组件可以随意叠加,有关层级的限制将不再存在。但需要注意的是,组件内部仍由原生渲染,样式一般还是对原生组件内部无效。当前所有原生组件(除 input 组件 focus 状态)均已支持同层渲染。

原生组件的使用限制

除事件相关,同层渲染下已无以下限制*

由于原生组件脱离在 WebView 渲染流程外,因此在使用时有以下限制:

  • 原生组件的层级是 最高的,所以页面中的其他组件无论设置

    z-index
    

    为多少,都无法盖在原生组件上。

    • 后插入的原生组件可以覆盖之前的原生组件。
  • 原生组件还无法在

    picker-view

    中使用。

  • 部分 CSS 样式无法应用于原生组件,例如:

    • 无法对原生组件设置 CSS 动画
    • 无法定义原生组件为 position: fixed
    • 不能在父级节点使用 overflow: hidden 来裁剪原生组件的显示区域
  • 原生组件的事件监听不能使用 bind:eventname 的写法,只支持 bindeventname。原生组件也不支持 catch 和 capture 的事件绑定方式。

  • 原生组件会遮挡 vConsole 弹出的调试面板。 在工具上,原生组件是用web组件模拟的,因此很多情况并不能很好的还原真机的表现,建议开发者在使用到原生组件时尽量在真机上进行调试。*

cover-view 与 cover-image

为了解决原生组件层级最高的限制。小程序专门提供了 cover-viewcover-image 组件,可以覆盖在部分原生组件上面。这两个组件也是原生组件,但是使用限制与其他原生组件有所不同。

原生组件相对层级

同层渲染下已无以下问题*

为了可以调整原生组件之间的相对层级位置,小程序在 v2.7.0 及以上版本支持在样式中声明 z-index 来指定原生组件的层级。该 z-index 仅调整原生组件之间的层级顺序,其层级仍高于其他非原生组件。

微信搜一搜【java1234】关注这个放荡不羁的程序员,关注后回复【资料】有我准备的一线大厂笔试面试资料以及简历模板。

以上是关于微信小程序 原生组件说明的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序代码片段分享

微信小程序代码片段

微信小程序原生组件层级过高的解决方法

微信小程序组件封装及调用-原生

uni-app 引用 微信小程序原生自定义组件

C#开发微信小程序