代码如下:
<button @click="handleButton">按钮</button>
<el-dialog v-model="flag">
<button @click="handleButton2">按钮1</button>
<HelloWorld @sendResult="sendResult" :dialogFlag="dialogFlag"
/></el-dialog>
const handleButton = () => {
flag.value = true;
};
const handleButton2 = () => {
dialogFlag.value = true;
};
这是父组件的代码,
这是子组件的代码:
import { ref, defineProps } from "vue";
const props = defineProps({
dialogFlag: {
type: Boolean,
},
});
let dialogFlag = ref(props.dialogFlag);
这是子组件的结构代码
<el-dialog title="选择地址" width="70%" v-model="dialogFlag"></el-dialog>
刷新页面就报
这样的错
由于父组件点击触发是一个弹框,弹框里面有按钮点击按钮也是一个弹框,就是嵌套弹框
期望刷新的时候不是报上面的截图,修改了后顺畅的功能,
看起来不像是
dialogFlag
传值的问题,可能是因为你在弹窗子组件的初始化相关业务代码里面处理一些其他的业务代码,和dialogFlag
没什么关系。大概是定位在你的
HellowWorld.vue
文件的47
行 和69
行。看看是否有其他的业务代码经行了初始化,比如说地图组件之类的。确保在弹窗组件渲染之后或者再去操作。