vue+elementui 新增和编辑如何实现公用一个弹框

//html代码: //按钮 <el-button type="primary" size="medium" @click="addEquipment">新增</el-button>

  <el-button type="text" size="medium" @click="handelEdit(scope.$index, scope.row)">编辑</el-button>

  

  //弹框

 1 <el-dialog
 2     :title="titleMap[dialogStatus]"
 3     :visible.sync="dialogFormVisible" >
 4         <el-form :model="form">
 5             <el-form-item label="major" >
 6             <el-input v-model="form.major" auto-complete="off"></el-input>
 7             </el-form-item>
 8             <el-form-item label="minior" >
 9                 <el-input v-model="form.minior" auto-complete="off"></el-input>
10             </el-form-item>
11             <el-form-item label="mac">
12                 <el-input v-model="form.mac" auto-complete="off"></el-input>
13             </el-form-item>
14             <el-form-item label="出场时间">
15                   <div class="block" style="margin-top:40px">
16                     <el-date-picker
17                     v-model="form.date"
18                     type="date"
19                     placeholder="选择日期">
20                     </el-date-picker>
21                 </div>
22             </el-form-item>
23         </el-form>
24         <div slot="footer" class="dialog-footer">
25             <el-button @click="dialogFormVisible = false">取 消</el-button>
26             <el-button type="primary" @click="dialogFormVisible = false">确 定</el-button>
27         </div>
28 </el-dialog>

//javascirpt:

 1 <script>
 2 export default {
 3     data() {
 4         return{
 5                 dialogFormVisible:false,
 6                 form:{
 7                     major:"",
 8                     minior:"",
 9                     mac:"",
10                     date:""
11                 },
12                 //新增or编辑弹框标题(根据点击的新增or编辑按钮显示不同的标题)
13                 titleMap: {
14                     addEquipment:‘新增设备‘,
15                     editEquipment: "编辑设备"
16                 },
17                 //新增和编辑弹框标题
18                 dialogStatus: "",
19     },
20     method:{
21             //新增
22             addEquipment() {
23                 //显示弹框
24                 this.dialogFormVisible = true;
25                 //新增弹框标题
26                 this.dialogStatus = "addEquipment";
27             },
28             //编辑
29             handelEdit() {
30                 //显示弹框
31                 this.dialogFormVisible = true;
32                 //编辑弹框标题
33                 this.dialogStatus = "editEquipent"
34             },
35     }
36 }
37 </script>       

原文地址:https://www.cnblogs.com/hj0711/p/9172391.html

时间: 2025-01-12 15:59:57

vue+elementui 新增和编辑如何实现公用一个弹框的相关文章

spring boot + vue + element-ui全栈开发入门——基于Electron桌面应用开发

 前言 Electron是由Github开发,用HTML,CSS和JavaScript来构建跨平台桌面应用程序的一个开源库. Electron通过将Chromium和Node.js合并到同一个运行时环境中,并将其打包为Mac,Windows和Linux系统下的应用来实现这一目的. Electron于2013年作为构建Github上可编程的文本编辑器Atom的框架而被开发出来.这两个项目在2014春季开源. 目前它已成为开源开发者.初创企业和老牌公司常用的开发工具. 看看谁在使用Electron

spring boot + vue + element-ui全栈开发入门——开篇

最近经常看到很多java程序员朋友还在使用Spring 3.x,Spring MVC(struts),JSP.jQuery等这样传统技术.其实,我并不认为这些传统技术不好,而我想表达的是,技术的新旧程度体现了做项目时的生产力.生产力低了,项目的开发成本就高.反之,生产力高,则成本低.笔者写本系列的目的是让使用“前后端不分离”的老技术的开发者做一个入门级的过度.因为目前流行的“前后端分离”技术足够简单,足够方便,足够易学,也足够完善. 项目所使用的前端技术是:element-ui,文档地址是:ht

vue的表单编辑删除,保存取消功能

过年回来第一篇博客,可能说的不是很清楚,而且心情可能也不是特别的high,虽然今天是元宵,我还在办公室11.30在加班,但就是想把写过的代码记下来,怕以后可能真的忘了.(心将塞未塞,欲塞未满) VUE+ElementUI 的表单编辑,删除,保存,取消功能 VUE的表单 <el-form :label-position="labelPosition" label-width="120px" :model="form" ref="fo

vue中的父子组件之间的通信--新增、修改弹框

在一个vue页面中有时候内容会很多,为了方便编写查看,可以分为多个子组件,最后在父组件中引入对应的子组件即可. 下面这个是父子组件通信中的一个具体实例:新增.修改弹框. 子组件中主要写了关于新增.修改的弹框, 子组件: 1.弹框: <div class="newDocuments"> <div class="newDocuments_center"> <div class="center_header"> &l

vue element-ui IE9--11报 “无法获取未定义或null引用的属性‘toLowerCase’”

今天做zymh比赛的一个管理后台,用的技术是vue+element-ui+vue-router+axios,其他浏览器运行的很好,但是在IE(从IE11到IE9,vue支持IE9以上)都报错 点进去就是定位到了markUp这个函数,经查询是element-ui报错,element-UI在使用MessageBox,Message等组件时,只需要用import导入,而不需要继续Vue.component(Message.name,Message) . 将各个组件中的Vue.component(Mes

新增、编辑功能实现错误记录...

做新增和编辑的功能,$.ajax提交表单,如果id为空走新增,不为空走编辑 controller层接收参数.(Long id) 一开始的时候,js里面的逻辑是,新增和编辑按钮点击后进入不同的方法,如果是新增的话,发送ajax请求的话就传{id:0;name:name;country:country},编辑的话就传{id:id;name:name;country:country}. 后来有人优化我的js代码,采用$("#addForm").serialize()的方式(前提是引入了boo

vue element-ui 日期选择器组件 日期时间格式化

vue element-ui 组件开发大大提高了我们的效率,但有时候并不能满足我们的需求,例如时间,日期组件: element-ui 日期返回的格式是这样的,看下图: 但我们要的是另一个格式 , 如下图: 怎么解决? 可以用一个插件 moment.js 解决 1:下载,安装 npm install moment --save 2:引用,我这里是全局引用,并用原型链把方法挂到了vue上面,看下图: 3:使用,看下图: moment(date).format("YYYY-MM-DD HH:mm:ss

关于新增和编辑

我想大家在开发的过程中,肯定都会遇到这样一种场景, 编辑和新增都在同一个页面, 在处理这种问题的时候, 我想很多人都会这样处理 1 //获取参数函数 2 function queryString(name) { 3 var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); 4 var r = window.location.search.substr(1).m

vue+elementUI封装的时间插件(有起始时间不能大于结束时间的验证)

vue+elementUI封装的时间插件(有起始时间不能大于结束时间的验证): html: <el-form-item label="活动时间" required> <el-col :xs="24" :sm="11" :md="7" :lg="5" class="startTime"> <el-form-item prop="start_time&