展开全部
// 可以使用回调的方法
// 父页面
// 父页面调用组件的html 中 添加事件 @test="test"
methods : {
test(data, cab) {
setTimeout(() => {
// 这里使用定时器 模拟执行完方法
console.log(data) // 这是传递过来的参数 用于处理
data++
cab(data) // 将处理完成的数据返回回去
}, 2000)
}
}
// 子页面
this.$emit('tset', 1, (res)=> {
console.log(res) // 2秒后会执行这一句 打印2
})
// 我们也可以用 Promise 的方法代替 回调
methods : {
test(data) {
return new Promise((resolve)=>{
setTimeout(() => {
// 这里使用定时器 模拟执行完方法
console.log(data) // 这是传递过来的参数 用于处理
data++
resolve(data) // 将处理完成的数据返回回去
}, 2000)
})
}
}
// 子页面
const res = await this.$emit('tset', 1)
console.log(res) // 2秒后会执行这一句
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |