vue 子页面调用父页面方法并获取返回值
在使用子组件调用父组件方法:this.$emit(方法名, 参数1, 参数2),该方法的返回值是vue对象,而不是父组件方法的return值。此时要用回调函数作为参数,父组件里执行该回调函数,返回值后给子组件,然后子组件再接收。// 父组件<template><List @delCheckFun="delCheckFun"></uploader></tem
·
在使用子组件调用父组件方法:this.$emit(方法名, 参数1, 参数2),该方法的返回值是vue对象,而不是父组件方法的return值。此时要用回调函数作为参数,父组件里执行该回调函数,返回值后给子组件,然后子组件再接收。
// 父组件
<template>
<List @delCheckFun="delCheckFun"></List>
</template>
<script>
export default {
methods: {
delCheckFun(row, callback) {
let result = false;
//业务逻辑代码...
callback(result); // 执行作为参数的函数,注意:callback(true)写法,要赋值给变量result
}
}
}
</script>
// 子组件
export default {
methods: {
remove(row) {
let result = false
this.$emit('delCheckFun', row, val => { result = val }) // 传函数给父组件
return result
}
}
}
更多推荐
已为社区贡献3条内容
所有评论(0)