<template> <el-dialog :title="title" :visible.sync="dialogFormVisible" width="500px" @close="close" > <el-divider content-position="left"> 这里就不具体写了,请自行完善 </el-divider> <el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form-item label="name" prop="name"> <el-input v-model="form.name" autocomplete="off"></el-input> </el-form-item> <el-form-item label="路径" prop="path"> <el-input v-model="form.path" autocomplete="off"></el-input> </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> <el-button @click="close">取 消 </el-button> <el-button type="primary" @click="save">确 定</el-button> </div> </el-dialog> </template> <script> import { doEdit } from "@/api/menuManagement"; export default { name: "MenuManagementEdit", data() { return { form: {}, rules: { id: [{ required: true, trigger: "blur", message: "请输入路径" }], }, title: "", dialogFormVisible: false, }; }, created() {}, methods: { showEdit(row) { if (!row) { this.title = "添加"; } else { this.title = "编辑"; this.form = Object.assign({}, row); } this.dialogFormVisible = true; }, close() { this.$refs["form"].resetFields(); this.form = this.$options.data().form; this.dialogFormVisible = false; }, save() { this.$refs["form"].validate(async (valid) => { if (valid) { const { msg } = await doEdit(this.form); this.$baseMessage(msg, "success"); this.$emit("fetchData"); this.close(); } else { return false; } }); }, }, }; </script>