I have a parent where I can dynamically add child components into.
When child component is added in mount I register a listener for an event
EventBus.$on
When you call $off
with just the name of the event, all listeners are removed for the event specified.
Instead, you want to remove the event only for the component that is listening. your component should look something like this:
const component = {
methods:{
listener(){
//do something on event
}
},
created(){
EventBus.$on('content-type-saving', this.listener)
},
beforeDestroy(){
EventBus.$off('content-type-saving', this.listener)
}
}
This will remove only the specific listener for the current component.