vue3+elment-plus项目,el-diglog的按钮,内部是el-form的子组件,那么保存时,如何触发子组件的form表单提交

问题:el-diglog的按钮,如何触发内部的form表单提交

el-dialog是父组件,cengji是子组件
代码如下:

<el-dialog v-model="dialogVisible" title="层级结构管理" width="1000" >
      <cengji :tableId="tableId" />
      <template #footer>
        <div class="dialog-footer">
          <el-button @click="dialogVisible = false">取消</el-button>
          <el-button type="primary" @click="dialogVisible = false">
            确定
          </el-button>
        </div>
      </template>
    </el-dialog>

思考展开

1.父组件如何触发子组件的事件
2.提交的代码,写再子组件,还是父组件中

尝试答案

https://www.cnblogs.com/yuzhongyu/p/10825824.html

使用ref+defineExpose来调用子组件的方法

  1. 父组件中,给子组件ref
    2.子组件,中定义方法,并使用defineExpose暴露出来
    3.父组件,通过点击等等事件触发, xxxref.value.方法
const  submit=()=>{
    console.log('提交了')
}

//暴露state和play方法
defineExpose({
  submit
})
posted @ 2024-02-22 17:32  风意不止  阅读(50)  评论(0编辑  收藏  举报