最近突然想学学小程序,打开了官网跟着看,突然觉得有点蒙圈了。可能是我水平太菜了看不懂吧,总之,总结一下吧。
1. 自定义组件 component
在官网看到当前案例的时候没有给引用的代码,导致我都不知道这玩意咋用的(毕竟我不能一口气全看完,还没有那么闲,难免会忘)
<!-- 组件模板 -->
<view class="wrapper">
<view>这里是组件的内部节点</view>
<slot></slot>
</view>
<!-- 引用组件的页面模版 -->
<view>
<component-tag-name>
<!-- 这部分内容将被放置在组件 <slot> 的位置上 -->
<view>这里是插入到组件slot中的内容</view>
</component-tag-name>
</view>
后来百度找到缺少的代码,要在引用这个组件的json文件里加上
"usingComponents":{
"comp":"../component/comp" //你自己组件的路径以及名字
}
2. 组件模板绑定事件
<!-- 当自定义组件触发“myevent”事件时,调用“onMyEvent”方法 -->
<component-tag-name bindmyevent="onMyEvent" />
<!-- 或者可以写成 -->
<component-tag-name bind:myevent="onMyEvent" />
我们要是复制粘贴官网代码那完全没问题,坑就在这个bind上。 比如这个案例属性名是bindmyevent, 那么在组件内部使用this.triggerEvent的时候 要去掉bind 变成 this.triggerEvent('myevent',{},{})
可能看文档心细的朋友会发现这个问题,我是那种粗心的。。。直接尝试绑定自己的事件,结果试了半天