vue3+element-plus props中的变量使用 v-model 报错

<template>
  <el-button @click="handleClick" type="primary">
    <slot></slot>
  </el-button>
  <el-dialog :title="title" v-model="visiable">111</el-dialog>
</template>

<script lang="ts" setup>
import {watch} from 'vue'
let props = defineProps<{
  // 弹出框的标题
  title: string,
  //   控制弹出框的显示与隐藏
  visiable: boolean
}>();
let emits = defineEmits(['update:visiable'])
let handleClick = () => {
    emits('update:visiable',!props.visiable)
};

// 监听visible的变化
watch(() =>props.visiable,val => {
    emits('update:visiable',val)
    console.log(val)
})
</script>

<style>
</style>

在el-dialog组件上的v-model绑定的值是props中父组件传过来的,报以下错误:
vue3+element-plus props中的变量使用 v-model 报错_第1张图片
解决方案:
prop 是单向数据流,这里只能用:model-value,不能用v-model

你可能感兴趣的:(vue.js,javascript,elementui)