一开始查百度,别人都说 this.$emit(方法名, 参数);里面的方法名不能是驼峰法,试了下不行;

还有说emit不能写在axios里的,于是我拿到外面去了也不行;

最后谷歌查,原来是父组件里的子组件需要注册一下被监听的方法
在这里插入图片描述

parent组件

<el-parent>
            <wx-upload v-on:uploadsuccess="UploadSuccess"></wx-upload>
</el-parent>

...
<script>
export default {
    name: 'Header',
    components: {
        WxUpload: child
    },
	methods:{
		UploadSuccess(){
			console.log('test');
		}
    }

}

</script>

child 组件

...
this.$axios.post('/api/video', filedata, config).then( rsp=>{
   ...
    if(resp.code == 200){
        this.$emit('uploadsuccess', resp.data);
    }
})
Logo

前往低代码交流专区

更多推荐