问题描述
这是我的代码:
watch: {
'notifications' : {
handler(newVal) {
let questionnaireTypes = ['TwoDaysConnected','OneWeekConnected','TwoWeekInactive']
if(newVal) {
this.checkdisplayQuestionnaire(questionnaireTypes)
}
},immediate: false
}
},
mixin_common.js 中的方法:
import EventBus from "./event-bus.js"
export default window.mixin_common = {
methods: {
checkdisplayQuestionnaire(questionnaireTypes) {
let stateNotifications = this.$store.state.notifications
EventBus.$emit('openQuestionnaireExperimentationModalWithDatas',stateNotifications)
}
}
我想用 EventBus 打开的模态所在的组件:
import EventBus from "./event-bus.js"
methods: {
openModal() {
this.$bvModal.show('questionnaireExperimentationModal')
},},mounted() {
EventBus.$on('openQuestionnaireExperimentationModalWithDatas',(notifications) => {
this.notifications = notifications
this.openModal()
})
事件总线.js:
import Vue from 'vue'
const EventBus = new Vue();
export default EventBus;
实际上,模态不会打开,它起作用的唯一方法是将 EventBus.$emit('openQuestionnaireExperimentationModalWithDatas',stateNotifications)
直接放在随机组件中,而不使用 mixin,但如果可能,我需要使用 mixin 打开它。
有人知道怎么做吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)