目标效果
我不注册事件,那么就不显示相关的按钮
注册了事件,才会显示相关内容
实现思路
- 组件在
mounted
的时候可以拿到父组件注册监听的方法
拿到这个就可以做事情了
mounted() {
console.log('this.$listeners', this.$listeners);
this.show.search = !!this.$listeners['handleSearch'];
this.show.refresh = !!this.$listeners['handleRefresh'];
this.show.add = !!this.$listeners['handleAdd'];
}
判断事件是否注册,来渲染相应的组件