请教一下:页面监听组件事件,将组件内的值传出给页面这个过程到底是怎么完成的,按照官方文档来并没有成功。
想要将价格组件的值(文本框中的数字)传递给页面中,下面是我的代码。
页面 wxml
<view>
<!-- 以下是对一个自定义组件的引用 –>
<price num=“{{2}}” bind:myevent=“onMyEvent”/>
</view>
页面 js
Page({
onMyEvent: function (e) {
console.log(e.detail) // 自定义组件触发事件时提供的detail对象
}
})
自定义组件 wxml
<view class=“quantityViewStyle”>
<view class=“minusStyle” bindtap=“minus” style=“color:{{num==min?‘#DADADA’:white}}”>-</view>
<view class=“inputViewStyle”>
<input class=“inputStyle” value=“{{num}}” type=“number”/>
</view>
<view class=“plusStyle” bindtap=“plus” style=“color:{{num==max?‘#DADADA’:white}}”>+</view>
</view>
自定义组件 js
Component({
methods: {
_emitMyEvent: function () {
var myEventDetail = {} // detail对象,提供给事件监听函数
var myEventOption = {} // 触发事件的选项
this.triggerEvent(‘myevent’, myEventDetail, myEventOption)
}
}
})