怎么样安装node环境和构建vue项目这里我就不详细说明了。在node和vue的官方文档里都能找得到

首先看一下我这个demo是什么样的

在这个demo里面,新增和编辑这两个按钮使用的是同一个弹窗

首先,这里有两个问题

第一:编辑所在的这个组件和新增所在的这个组件这是两个子组件,怎么让编辑和新增同时使用一个弹窗

第二:点击弹窗的确定按钮的时候怎么判断是新增的还是编辑的

咱们先来解决第一个问题,两个子组件怎么使用同一个弹窗,这就需要子组件互相传值了,通过使用bus来把新增的这个弹出弹窗的方法传给编辑,首先在父组件的data里面需要new一个vue实例,代码如下:

然后分别给两个子组件绑定这个bus,这是两个子组件

还要再两个子组件分别同props存放bus

在新增的那个组件里面

通过$on绑定,把show这个方法绑定起来,然后再编辑的那个组件里面这样写

Edit是编辑按钮点击事件所触发的方法,这样你就把一个show的方法通过bus实现子组件之间传递

解决了第一个问题,接着来解决第二个问题,第二个问题是如何判断弹窗里的确定按钮是新增还是编辑,这里面比较复杂,因为

这是两个子组件,所以当你点击编辑的时候你得先把这个列表里的内容放到弹窗的那个表格里,因为你点编辑的时候只是调用了

一下人家的那个方法而已,里面并没有数据,所以还是通过bus把列表的内容传给弹窗,这样判断是编辑还是新增容易了,你只需要判断一下有没有id就好了,编辑的时候肯定是有id的,新增的时候肯定是没有id的,代码如下

打码的地方写你的接口就好了,这就是实现新增和编辑同用一个弹窗的过程
--------------------- 
作者:buzhidaoqoshaming 
来源:CSDN 
原文:https://blog.csdn.net/buzhidaoqoshaming/article/details/80228924 
版权声明:本文为博主原创文章,转载请附上博文链接!

如何使用vue使同一个弹窗同时能实现添加和编辑相关推荐

  1. vue 定义全局弹框_VUE路由拦截:Vue自定义全局弹窗组件

    前言 在任何一个平台中,如果需要增加用户黏度,除了用户需要的基本内容外,用户登录注册提交信息也是非常重要的一环,可以了解用户基本信息,用户喜欢等. 抛出前后端混合开发外,vue可以轻松的实现路由拦截. ...

  2. 从零开始徒手撸一个vue的toast弹窗组件

    相信普通的vue组件大家都会写,定义 -> 引入 -> 注册 -> 使用,行云流水,一气呵成,但是如果我们今天是要自定义一个弹窗组件呢? 首先,我们来分析一下弹窗组件的特性(需求): ...

  3. vue离开页面弹窗提示

    vue离开提示弹窗分类 一:关闭页签.网页或刷新 mounted() {window.addEventListener("beforeunload", this.beforeUnl ...

  4. found 84 vulnerabilities (65 low, 7 moderate, 11 high, 1 critical) vue使用时提示有漏洞

    found 84 vulnerabilities (65 low, 7 moderate, 11 high, 1 critical)run `npm audit fix` to fix them, o ...

  5. Extjs中给同一个GridPanel中的事件添加参数的方法

    Extjs中给同一个GridPanel中的事件添加参数的方法: this.isUse = new Ext.Action({             text:'启用',             sco ...

  6. laravel-admin使添加、编辑按钮支持附带参数

    本篇博客教大家如何通过修改laravel-admin源码,使添加.编辑按钮支持附带参数,从而支持我们一些特殊业务.(对于高级版本的laravel-admin编辑方法不支持) 一.自定义添加方法 我们修 ...

  7. 【独立版】智慧城市同城V4_2.1.4全开源全插件VUE版,修复房产信息组件后台资料编辑中会显示其他平台小区的问题

    源码介绍 [独立版]智慧城市同城V4_2.1.4全开源全插件VUE版,修复房产信息组件后台资料编辑中会显示其他平台小区的问题!智慧城市同城是一套专注于多城市生活服务同城技术解决方案,全面覆盖同堿信息. ...

  8. vue+elementui中使用echarts给柱形图添加背景色

    vue+elementui中使用echarts给柱形图添加背景色 首先使用npm安装echarts npm install echarts --save //or(或者使用) cnpm install ...

  9. vue 一个组件内多个弹窗_论如何用Vue实现一个弹窗-一个简单的组件实现

    前言 最近在使用element-ui框架,用到了Dialog对话框组件,大致实现的效果,跟我之前自己在移动端项目里面弄的一个弹窗组件差不太多.然后就想着把这种弹窗组件的实现方式与大家分享一下,下面本文 ...

最新文章

  1. DCN-cs6200 ospf v2配置
  2. 栈的push、pop序列
  3. 450g吐司烘烤温度_教你一手如何判断吐司面包是否烤熟
  4. linux应用程序安装PPT免费序,linux下应用程序安装的总结
  5. android 存储方式以及路径简介
  6. 机器学习笔记(十)——Logistic Function AND Softmax Function
  7. 什么是波导的简并波,矩形波导和圆波导中的简并有何异同
  8. oracle装载数据,如何在SqlLoader中装载日期型的数据
  9. MaxtoCode 1.10 普及版 开发已经接近尾声
  10. CT图像重建简要介绍
  11. Xshell连接新浪云服务器
  12. 海马玩android模拟器哪个好用,海马玩模拟器好用吗?用电脑怎么玩手机APP?海马玩模拟器评测-太平洋电脑网...
  13. 一个用python实现的东方时尚(驾校)抢课程序
  14. Activiti流创建数据表的过程中报错 java.sql.SQLSyntaxErrorException: Table ‘activiti.act_ge_property‘ doesn‘t exis
  15. window的dos命令学习笔记 七
  16. POJ 2431 Expedition(贪心+优先队列)
  17. 除了Java,还可以培训学习哪些IT技术?
  18. 《JavaScript高级程序设计》读书笔记 -12.1 window对象
  19. 5步创建K8S Job,搞定批处理
  20. doPost()详解

热门文章

  1. DataGrid分页;指定列的总和和平均值;显示鼠标背景色;弹出式窗口;
  2. mac m1 php,【php】Macbook m1 Big Sur 安装php7.1 mondodb 折腾记
  3. pythonfor循环语句例子_Python for循环学习总结
  4. 采用SHELL,通过SQL LOAD导入一定格式的txt文件至数据库中
  5. jquery multiSelect 多选下拉框
  6. linux查看tomcat安装路径
  7. Exchange Server 2016管理系列课件22.通讯组概述
  8. 【iOS】iOS开发编码规范小结
  9. 50、BGP配置实验之社团属性community
  10. angularjs $state.go页面不刷新数据