微信小程序

最近在做微信小程序直播以及视频这块,因此需要用到小程序相应的原生组件,原生组件的一些限制与了解:

1.原生组件:
  camera/canvas/live-player/live-pusher/map/textarea/video/input(仅在focus时表现为原生组件)

2.原生组件的使用限制
	(1)原生组件的层级是最高的
			a.无论设置 z-index 为多少,都无法盖在原生组件上
			b.后插入的原生组件可以覆盖之前的原生组件
			c.解决层级限制:
				<1>.使用cover-view/cover-image[原生]组件,但是只能覆盖在部分原生组件上面
				<2>.原生组件同层渲染 
						0.同层渲染是默认开启的
						1.在支持同层渲染后,原生组件与其它组件可以随意叠加,有关层级的限制将不再存在
						2.组件内部仍由原生渲染,样式一般还是对原生组件内部无效
						3.当前 video, map, live-player, live-pusher, canvas(2d) 组件已支持同层渲染
				<3>原生组件相对层级
						1.微信小程序在 v2.7.0 及以上版本支持在样式中声明 z-index 来指定原生组件的层级
						2.该 z-index 仅调整原生组件之间的层级顺序,其层级仍高于其他非原生组件

	(2)原生组件还无法在 picker-view 中使用
			a.基础库 2.4.4 以下版本,原生组件不支持在 scroll-view、swiper、movable-view 中使用
		
	(3)部分CSS样式无法应用于原生组件
			b.无法对原生组件设置 CSS 动画
			c.无法定义原生组件为 position:fixed
			d.不能在父级节点使用 overflow: hidden 来裁剪原生组件的显示区域
		
	(4)原生组件的事件监听限制
			a.不能使用 bind:eventname 的写法,只支持 bindeventname
			b.原生组件也不支持 catch 和 capture 的事件绑定方式
		
	(5)原生组件会遮挡 vConsole 弹出的调试面板
			a.原生组件在开发工具上是用web组件模拟的,因此很多情况并不能还原真机的表现,因此使用到原生组件尽量在真机上进行调试

  

原文地址:https://www.cnblogs.com/changxue/p/12515809.html