1. 代码复用:这个组件可以在多个页面或组件中使用,避免了重复编写相同的按钮代码。
  2. 灵活性:通过showButtons属性,可以根据需要显示不同的按钮。默认情况下,它会显示添加、修改和删除按钮,但你也可以根据具体情况传递其他值来显示或隐藏按钮。
  3. 可定制性:每个按钮都有自己的点击事件处理函数,你可以根据需要自定义这些函数的实现。
<template>
<el-button v-show="showButtons.includes('add')" type="primary" @click="handleAdd">添加</el-button>
<el-button v-show="showButtons.includes('update')" type="success" @click="handleUpdate">修改</el-button>
<el-button v-show="showButtons.includes('delete')" type="warning" @click="handleDelete">删除</el-button>
<el-button v-show="showButtons.includes('resource')" type="primary" @click="handleDelete">关联资源</el-button>
</template> <script>
export default {
name: "CommonCrudButton",
props:{
showButtons:{
type:Array,
required:true,
default:['add','update','delete']
}
},
setup(props,{emit}){
console.log('curd button props',props.showButtons)
function handleAdd(){
emit('add')
}
function handleUpdate(){
emit('update')
}
function handleDelete(){
emit('delete')
}
return{handleDelete,handleUpdate,handleAdd}
}
}
</script> <style scoped> </style>

调用方法:

  1. 首先,确保你已经在项目中引入了Vue.js和Element UI库(因为代码中使用了Element UI的按钮组件)。

  2. 在需要使用这个组件的地方,导入它:

    import CommonCrudButton from '@/components/CommonCrudButton.vue';
  3. 在你的Vue组件中,注册并使用组件。你可以通过CommonCrudButton v-show指令来控制按钮的显示与隐藏,以及通过@click监听按钮的点击事件:

    <template>
    <div>
    <!-- 其他组件内容 -->
    <CommonCrudButton :showButtons="['add', 'update', 'delete']" @add="handleAdd" @update="handleUpdate" @delete="handleDelete" />
    </div>
    </template>
    <script>
    import CommonCrudButton from '@/components/CommonCrudButton.vue'; export default {
    components: {
    CommonCrudButton,
    },
    methods: {
    handleAdd() {
    // 处理添加按钮点击事件
    },
    handleUpdate() {
    // 处理修改按钮点击事件
    },
    handleDelete() {
    // 处理删除按钮点击事件
    },
    },
    };
    </script>
    复制
  4. methods中实现按钮点击事件的处理逻辑,根据需要进行相应的操作。

这样,你就可以在你的Vue组件中使用这个通用的增删改查按钮组件了。根据传入的showButtons属性值,它会显示相应的按钮,并在点击按钮时触发相应的事件处理函数。

转载自:vue通用的增删改查按钮组件

vue通用的增删改查按钮组件的更多相关文章

  1. 基于MVC和Bootstrap的权限框架解决方案 二.添加增删改查按钮

    上一期我们已经搭建了框架并且加入了列表的显示, 本期我们来加入增删改查按钮 整体效果如下 HTML部分,在HTML中找到中意的按钮按查看元素,复制HTML代码放入工程中 <a class=&qu ...

  2. 一起学Vue:CRUD(增删改查)

    目标 使用Vue构建一个非常简单CRUD应用程序,以便您更好地了解它的工作方式. 效果页面 比如我们要实现这样列表.新增.编辑三个页面: 列表页面 新增页面 编辑页面 我们把这些用户信息保存到Todo ...

  3. ABP+NetCore+Vue.js实现增删改查

    ABP我就不多介绍了,不知道的可以自己百度 本篇开发工具VS2017,数据库SQL SERVER2012,系统Win7 1.去ABP官网下载对应的模板,下载地址:https://aspnetboile ...

  4. EF(Entity Framework)通用DBHelper通用类,增删改查以及列表

    其中 通用类名:DBhelper 实体类:UserInfo 1 //新增 2 DBHelper<UserInfo> dbhelper = new DBHelper<UserInfo& ...

  5. 仿照admin实现一个自定义的增删改查的组件

    1.首先,创建三个项目,app01,app02,stark,在settings里边记得配置.然后举例:在app01的model里边写表,用的db.sqlite3,所以数据库不用再settings里边配 ...

  6. Vue表格数据增删改查及搜索

    <div id="app"> <div class="item"> <span class="name"> ...

  7. 封装自己通用的 增删改查的方法 By EF

    封装自己的通用CURD By EF using System; using System.Collections.Generic; using System.Data.Entity; using Sy ...

  8. Vue.js——3.增删改查

    vue  写假后台  bootstrap 做的样式 代码 <!DOCTYPE html> <html lang="en"> <head> < ...

  9. Vue+element基本增删改查

    <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...

  10. day25 crm 权限管理 通用的增删改查框架

    代码: https://github.com/liyongsan/git_class/tree/master/day25/LuffyCRM

随机推荐

  1. 记录一则exachk进程占用大量CPU资源

    有Exadata客户在进行exachk巡检之后反馈,发现系统中,exachk进程占用了大量CPU资源. 了解之前的变更,只是巡检之前升级了AHF,然后进行标准的exachk巡检. 现象: 目前机器整体 ...

  2. 7.函数的使用--《Python编程:从入门到实践》

    7.1 python 中函数的定义   python 中函数使用 def 定义: def greet_user(): 7.2 传参的传递   普通实参的传毒,可以与 C++ 相同,即按顺序传递. 7. ...

  3. C语言程序设计之 循环控制2020-10-20

    2020-10-20 整理: 第一题: 2011年开始实行新个人所得税法,要求输入月薪salary,输出应交的个人所得税 tax (保留两位小数). 新税法方案如下: tax=rate*(salary ...

  4. Python 虚拟环境 virtualenv 笔记

    初始化 virtualenv 方式一: virtualenv 安装 virtualenv, 不用sudo的话, 是安装到用户home目录下 pip install virtualenv # 此时如果 ...

  5. Java集合框架学习(五) ArrayList详解

    Arraylist介绍 Arraylist类实现了List接口. public class ArrayList<E> extends AbstractList<E> imple ...

  6. org.apache.http.client.ClientProtocolException: URI does not specify a valid host name:localhost:xxx

    今天部署应用的时候遇到的,总结一下我知道的有2个原因: 1.地址前要加http://  这就是标题报错的原因,他用的是localhost:xxx 2.地址本身拼错了也会报这个,例如地址:http:// ...

  7. 《深入理解Java虚拟机》(六) 调优策略 -- 笔记

    目录 一.操作文档类功能,大量大对象直接进入老年代 问题现象 解决方法 通过单一Java虚拟机管理大量的内存 同一台服务器上部署若干Java虚拟机 二.异步请求大量累积 三.排查问题 排查问题: 可能 ...

  8. 初级算法 - C++反转链表

    顾名思义, 就是将链表的所有结点反转. 解释见:[剑指offer]反转链表,C++实现(链表) 代码: #include <iostream> struct NodeList { int ...

  9. 并发慎用——System.currentTimeMillis()

    好记忆不如烂笔头,能记下点东西,就记下点,有时间拿出来看看,也会发觉不一样的感受. System.currentTimeMillis()是极其常用的基础Java API,广泛地用来获取时间戳或测量代码 ...

  10. 项目实战:Qt球机控制工具 v1.0.0(球机运动八个方向以及运动速度,设置运动到指定角度,查询当前水平和垂直角度)

    需求   1.调试球机控制,方向速度,设置到指定的角度:  2.支持串口,485等基于串口的协议端口配置打开:  3.子线程串口控制和.子线程协议解析:  4.支持球机水平运动速度.垂直运动速度设置: ...