Vue如何通过代码给子组件传入父组件的函数

因为业务需要,需要在代码中动态给dom节点挂组件实例,参数传入在实例创建时传入就能解决,但是现在需要组件向父级回调方法,这个如何实现?

等价于<child @doSomething="doSomething"></child>

怎么样通过js代码给child这个组件对象赋予doSomething方法,而不是通过页面写死的代码使用@符号传函数?

 

组件实例window动态创建代码            
const context = document.getElementById('context');
            const windowDom = document.createElement('div');
            context.appendChild(windowDom);
            windowDom.id = 'window' + index;
            const window = Vue.extend(Window);
            new window({
                el: '#window' + index,
                data() {
                    return { index: index, obj: obj, checkedModelId: this.checkedModelId };
                },
            });

请问如何让window组件能调用这个父组件中的方法?

2种方法: 1、通过调用子窗口的初始化方法传参数 2、通过调用url传参数

这样写

<child :doSomething="doSomething"></child>

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

最后还是使用全局变量解决,就不细究组件之间的传参了,直接用vuex公共数据解决问题