教大家封装一个基础el-table 行内气泡编辑框,你一定用的到

今天的任务就是封装这个用element ui 组件来封装,如果让你封装你会怎么封装呢?

不说废话了,直接上代码

新建一个EditablePopoverColumn.vue组件文件

<template>
    <el-table-column :prop="prop" :label="label">
        <template slot-scope="scope">
            <el-popover :ref="`popover${prop}`" trigger="click" placement="top">
                <div class="flex-row">
                    <el-input v-if="!isSelect" style="width: 65%; margin-right: 10px;"
                        v-model="scope.row[prop]"></el-input>
                    <el-select v-else style="width: 65%; margin-right: 10px;" v-model="scope.row[prop]">
                        <el-option v-for="item in selectOptions" :key="item.value" :label="item.label"
                            :value="item.label"></el-option>
                    </el-select>
                    <el-button icon="el-icon-check" type="primary" size="mini"
                        @click="saveEdit(scope.row, prop)"></el-button>
                    <el-button icon="el-icon-close" type="info" size="mini"
                        @click="cancelEdit(scope.row, prop)"></el-button>
                </div>
                <el-button slot="reference" type="text">{{ scope.row[prop] || `请输入${label}`
                    }}
                </el-button>
            </el-popover>
        </template>
    </el-table-column>
</template>

<script>
export default {
    props: {
        prop: String,
        label: String,
        selectOptions: Array
    },
    computed: {
        isSelect() {
            return Array.isArray(this.selectOptions) && this.selectOptions.length > 0;
        }
    },
    data() {
        return {
            
        };
    },
    methods: {
        saveEdit(row, prop) {
                this.$refs[`popover${prop}`].doClose();
        },
        cancelEdit(row, prop) {
            this.$refs[`popover${prop}`].doClose();
        }
    }
};
</script>

在相关的页面引用就好拉~

<el-table :data="tableData" style="width: 100%">
            <editable-popover-column prop="contactName" label="联系人"></editable-popover-column>
            <editable-popover-column prop="position" label="职位"
                :select-options="list"></editable-popover-column>
........

</el-table>

剩下的作业就交给你们啦~  学着做出来吧

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/734436.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

探索ChatTTS项目:高效的文字转语音解决方案

文章目录 &#x1f4d6; 介绍 &#x1f4d6;&#x1f4d2; ChatTTS &#x1f4d2;&#x1f4dd; 项目介绍&#x1f4dd; 项目亮点&#x1f4dd; UI &#x1f388; 项目地址 &#x1f388; &#x1f4d6; 介绍 &#x1f4d6; 在AI技术迅速发展的今天&#xff0c;文本到语音&…

Mac OS 如何在命令行下启动Docker

现象 当用 Mac air作为服务器时&#xff0c;远程登录上去后想使用 docker&#xff0c;却报如下错&#xff1a; Cannot connect to the Docker daemon at unix:///Users/aborn/.docker/run/docker.sock. Is the docker daemon running? 原因分析 因为 docker 有一个守护进程…

array_key_exists() expects parameter 2 to be array, null given

公众号获取微信服务器IP地址 错误代码如下 public function getwxIP(){//获取微信服务器IP地址$accessToken $this->getwxoaiAccessToken();$userToken new UserToken();$result $userToken->curl_get("https: //api.weixin.qq.com/cgi-bin/get_api_domain_ip…

根据状态转移写状态机-二段式

目录 描述 输入描述&#xff1a; 输出描述&#xff1a; 描述 题目描述&#xff1a; 如图所示为两种状态机中的一种&#xff0c;请根据状态转移图写出代码&#xff0c;状态转移线上的0/0等表示的意思是过程中data/flag的值。 要求&#xff1a; 1、 必须使用对应类型的状…

C++ 79 之 自己写异常类

#include <iostream> #include <string> using namespace std;class MyOutOfRange : public exception{ // 选中exception右键 转到定义 复制一份 virtual const char* what() const _GLIBCXX_TXN_SAFE_DYN _GLIBCXX_NOTHROW 进行函数重写 public: string m_msg;M…

初学者的TensorFlow 2.0 开发环境安装 -《MCU嵌入式AI开发笔记》(第七集)

MCU嵌入式AI开发笔记 初学者的TensorFlow 2.0 开发环境安装 -《MCU嵌入式AI开发笔记》&#xff08;第七集&#xff09;。抖音、B站、视频号等站点搜索柔贝特三哥&#xff0c;《MCU嵌入式AI开发笔记》视频同步更新&#xff0c;视频详细讲解。 07 初学者的 TensorFlow 2.0 教程 …

openEuler23.09安装Postgresql16.3

openEuler23.09安装Postgresql16.3&#xff0c;基于源代码编译安装PostgreSQL的基本步骤 一、PostgreSQL数据库服务环境搭建 操作系统版本 openEuler-23.09-x86_64-dvd.iso &#xff0c;安装步骤此处省略。。。 最常用且直接的方法来查看openEuler的版本号是查看/etc/os-rel…

“论软件系统建模方法”必过范文,软考高级,系统架构设计师论文

论文真题 软件系统建模(Software System Modeling)是软件开发中的重要环节,通过构建软件系统模型可以帮助系统开发人员理解系统、抽取业务过程和管理系统的复杂性,也可 以方便各类人员之间的交流。软件系统建模是在系统需求分析和系统实现之间架起的一 座桥梁,系统开发人…

【C++LeetCode】【热题100】最长连续序列【中等】-不同效率的题解【5】

题目&#xff1a; 暴力方法&#xff1a; class Solution { public:int longestConsecutive(vector<int>& nums) {int maxlen1;//定义最长连续序列if(nums.size()<1){//特殊情况的长度 等于序列长度return nums.size();}std::unordered_set<int> uniqu…

Transformers是SSMs:通过结构化状态空间对偶性的广义模型和高效算法(二)

6 针对SSD模型的硬件高效算法 在SSM、注意力和结构化矩阵之间开发理论SSD框架的好处在于&#xff0c;可以利用这些联系来改进模型和算法。在本节中&#xff0c;我们将展示如何从计算结构化矩阵乘法的各种算法中推导出计算SSD模型的高效算法。 我们的主要计算结果是一个用于计算…

C++ Vector的模拟实现

vector的介绍 1. vector是表示可变大小数组的序列容器。 2. 就像数组一样&#xff0c;vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素进行访问&#xff0c;和数组一样高效。但是又不像数组&#xff0c;它的大小是可以动态改变的&#xff0c;而…

Python使用tkinter制作无边框透明时钟源码讲解(tkinter如何实现窗口无边框透明)

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 文章内容 📒📝 导入必要的库📝 创建主窗口🎯 去掉窗口边框🎯 设置窗口透明度🎯 允许窗口背景透明🎯 设置窗口背景颜色为透明🎯 设置窗口位置🎯 创建用于显示时间的标签📝 更新时间函数📝 使窗口可移动📝…

java打印金字塔paremid和空心金字塔

java打印金字塔 首先确定每行打印几个空格&#xff0c;在确定每行打印几个* 设总层数为layers&#xff0c;当前层数为i。 则每行打印空格数layers-i&#xff0c;每行打印星号数2*i-1 import java.util.Scanner;public class Paremid{public static void main(String[] args) …

2024华为OD机试真题-生成哈夫曼树-(C++/Python)-C卷D卷-100分

2024华为OD机试题库-(C卷+D卷)-(JAVA、Python、C++) 题目描述 给定长度为 n 的无序的数字数组,每个数字代表二叉树的叶子节点的权值,数字数组的值均大于等于1。 请完成一个函数,根据输入的数字数组,生成哈夫曼树,并将哈夫曼树按照中序遍历输出。 为了保证输出的二叉树中…

6.S081的Lab学习——Lab7: Multithreading

文章目录 前言一、Uthread: switching between threads (moderate)提示&#xff1a;解析 二、Using threads (moderate)解析&#xff1a; 三、Barrier (moderate)解析&#xff1a; 总结 前言 一个本硕双非的小菜鸡&#xff0c;备战24年秋招。打算尝试6.S081&#xff0c;将它的…

html侧导航栏客服栏

ico 替换 ICO <html xmlns"http://www.w3.org/1999/xhtml"><head><meta http-equiv"Content-Type" content"text/html; charsetutf-8"><title>返回顶部</title><script src"js/jquery-2.0.3.min.js"…

项目四 OpenStack身份管理

任务一 理解身份服务 1.1 •Keystone的基本概念 • 认证 &#xff08; Authentication &#xff09; —— 确认用户身份的过程 &#xff0c;又称身份验证 。 • 凭证 &#xff08; Credentials &#xff09; —— 又 称凭据&#xff0c;是用于 确认用户身份的数据 。 • 令牌…

SpringMVC系列三: Postman(接口测试工具)

接口测试工具 &#x1f49e;Postman(接口测试工具)Postman介绍Postman是什么Postman相关资源Postman安装Postman快速入门Postman完成Controller层测试其它说明 &#x1f49e;课后作业 上一讲, 我们学习的是SpringMVC系列二: 请求方式介绍 现在打开springmvc项目 &#x1f49e…

三电平光伏逆变器高效DPWM研究

1. 引言 本文从效率 提升角度出发 , 详细分析了逆变器不同调制策略下开关 器件及滤波器损耗分布情况 , 并在 50kW 组串式三电平光伏逆变器上对比分析采用 SVPWM 和 DPWM 两种 调制方法对逆变器效率和谐波的影响 , 最终验证了采用 DPWM 调制策略的优越性。 2 SVPWM 和 DPWM 对比…

浙江工商大学24计算机考研数据,好几个专业都接收调剂,计专复试线284分!

浙江工商大学&#xff08;Zhejiang Gongshang University&#xff09;&#xff0c;简称“浙商大”&#xff08;ZJSU&#xff09;&#xff0c;坐落于浙江省杭州市&#xff0c;是中华人民共和国教育部、中华人民共和国商务部和浙江省人民政府共建的浙江省重点建设高校&#xff0c…