一般情况下,Dialog有以下两种写法:
第一种写法:点击关闭或空白处无需特别处理,dialog内部分修改当前值的状态,通过snync传递给父组件
示例:
点击打开 Dialog
这是一段信息
取 消
确 定
export default {
data () {
return {
dialogVisible: false
}
},
methods: {
handleClose (done) {
this.$confirm('确认关闭?')
.then(_ => {
done()
})
.catch(_ => {
})
}
}
}
第二种写法:需要在beforeClose方法内手动处理this.dialogVisible=false
示例:
点击打开 Dialog
这是一段信息
取 消
确 定
export default {
data () {
return {
dialogVisible: false
}
},
methods: {
handleClose (done) {
this.$confirm('确认关闭?')
.then(_ => {
this.dialogVisible = false // 手动关闭
done()
})
.catch(_ => {
})
}
}
}
单击Dialog右上角的x,弹出确认框,单击确认对话框关闭。如果没有上面Javascript中的手动关闭的代码,单击确认对话框后Dialog不会关闭