想要的效果
我的实现
生成时间降序排列
生成时间升序排列
/* index.json */
{
"usingComponents": {
"filter": "../../components/filter/filter",
"filterOption": "../../components/filter-option/filter-option"
}
}
// filter.json & filter-option.json
{
"component": true
}
{{title}}
// filter.js
Component({
options: {
multipleSlots: true // 在组件定义时的选项中启用多slot支持
},
properties: {
title: {
type: String,
value: ''
}
},
data: {
visible: true
},
methods: {
taggle () {
console.log("taggle")
this.setData({
visible: !this.data.visible
})
},
closeFilter () {
this.setData({
visible: false
})
}
},
relations: {
'../filter-option/filter-option': {
type: 'child'
}
}
})
// filter-option.js
Component({
methods: {
onTap () {
console.log("i clicked");
this.triggerEvent('tapoption', {}, {
bubbles: true,
composed: true
});
this.triggerEvent('closefilter')
}
},
relations: {
'../filter/filter': {
type: 'parent'
}
}
})
结果
filter-option的onTap没有起效果,就是console.log也没执行,我怀疑,自定义组件用slot嵌套自定义组件,里面的自定义组件不能绑定事件,更不用谈triggerevent了。
请教
请问有方法实现我要的功能吗?或者是我的用法和理解错了?请指教。