技术

·

2 min read

·

- Views

微信小程序中自定义组件的一个问题

Copied

微信小程序中自定义组件的一个问题

前言

小程序中在tab切换时,我希望实现tab下方内容能有渐隐渐显的过渡效果。 较为简单的方法是直接js实现

然后在html 中将opacity进行绑定即可

初见美好,再见不好

由于这个List在别的地方也用到了,我抽了个组件 因此这块代码替换为了

现在问题就来了,在uniapp的预览中(H5),过渡效果一切正常。 当我编译到wx小程序后,动画效果没了。。。。

看了半天找不到原因,终于当我看wxml发现了问题

正常来说 opacity应该是绑定到view这样一个真实dom上的,

但是当我替换为组件时,opacity却绑定到了knowledge-list这个元素上。

这与vue还是存在区别,在vue中,对自定义组件设置的属性,应该是会自动绑定到组件的根元素上面的,但是在微信小程序中却不是,因为微信小程序会保留组件元素,所有属性都是直接绑到了组件元素上了。

解决

通过传参来进行绑定。

父组件:

子组件