gpt4 book ai didi

vue.js - 验证 : programmatically showing dialog

转载 作者:搜寻专家 更新时间:2023-10-30 22:18:41 25 4
gpt4 key购买 nike

vuetify 说:如果你想以编程方式打开或关闭对话框,你可以通过使用带有 bool 值的 v-model 来实现。

但是我不太清楚这是什么意思。说“使用 v-model”充其量是模糊的。父组件在设置时知道它是否应该打开,但我不清楚如何在子组件中动态更改它。我应该使用 v-bind 传递它吗?

<login v-bind:showDialog></login>

如果是,子组件如何处理?

Vuetify 对话信息在这里:https://vuetifyjs.com/components/dialogs

最佳答案

据我所知,您有一个子组件,其中有一个对话框。不确定这是否 100% 正确,但这就是我实现它的方式。带对话框的子组件:

<template>
<v-dialog v-model="intDialogVisible">
...
</template>

<script>
...
export default {
props: {
dialogVisible: Boolean,
...
},
computed: {
intDialogVisible: {
get: function () {
if (this.dialogVisible) {
// Some dialog initialization code could be placed here
// because it is called only when this.dialogVisible changes
}

return this.dialogVisible
},
set: function (value) {
if (!value) {
this.$emit('close', some_payload)
}
}
}

在父组件中我们使用它:

<my-dilaog :dialogVisible="myDialogVisible"
@close="myDialogClose">
</my-dialog>

data () {
return {
myDialogVisible: false
}
},
methods: {
myDialogClose () {
this.myDialogVisible = false
// other code
}
}

关于vue.js - 验证 : programmatically showing dialog,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44446559/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com