使用vue3封装一个dialog组件

发布时间:2023年12月19日

在element-ui做的表格中最常见的就是表格的增删改查,在添加和修改大部分我们公用一个弹窗,vue3中,我我们会用的defineExpose():

//子组件
const defaultForm = {
  title: '',
  cate_id: '',
  cover_img: '',
  content: '',
  state: ''
}
const formModel = ref({ ...defaultForm })
const open = (row) => {
  visibleDrawer.value = true
  if (row.id) {
    console.log('编辑回显')
  } else {
    formModel.value = { ...defaultForm }
  }
}
//父组件
 <template #default="scope">
          <el-button size="small" @click="handleEdit(scope.$index, scope.row)"
            >编辑</el-button
          >
          <el-button
            size="small"
            type="danger"
            @click="handleDelete(scope.$index, scope.row)"
            >删除</el-button
          >
</template>


const handleEdit = (index, row) => {
  dialogRef.value.open(row)  //编辑
}
const addCate = () => {
  dialogRef.value.open({})  //添加
}

文章来源:https://blog.csdn.net/m0_45925246/article/details/135090643
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。