elementui中添加开关控制

在这里插入图片描述

<template>
  <!-- 图层管理 -->
  <div class="home-wrapper">
    <div class="table-list">
      <div class="list">
        <el-table :data="tableData" height="100%" style="width: 100%;" border>
          <el-table-column type="expand">
            <template slot-scope="props">
              <el-table :data="props.row.tableData" :show-header="false" class="inner-table" style="width: calc(100% - 48px);margin-left: 48px;">
                <el-table-column prop="itemName" align="center" width="320">
                </el-table-column>
                <el-table-column prop="itemIndexX" align="center" width="320">
                </el-table-column>
                <el-table-column prop="itemOpen1" align="center" width="320">
                  <template slot-scope="{row}">
                    <el-switch :value="row.itemOpen1" @change="handleOpen1(row)">
                    </el-switch>
                  </template>
                </el-table-column>
                <el-table-column prop="itemOpen2" align="center" width="320">
                  <template slot-scope="{row}">
                    <el-switch :value="row.itemOpen2" @change="handleOpen2(row)">
                    </el-switch>
                  </template>
                </el-table-column>
                <el-table-column label="操作" align="center">
                  <template slot-scope="{row}">
                    <el-button size="mini" type="text" icon="el-icon-view" @click="handleEdit(row)">编辑</el-button>
                  </template>
                </el-table-column>
              </el-table>
            </template>
          </el-table-column>
          <el-table-column label="图层名称" prop="name" align="center" width="320">
          </el-table-column>
          <el-table-column label="排序" prop="indexX" align="center" width="320">
          </el-table-column>
          <el-table-column label="图层状态" align="center" width="320">
          </el-table-column>
          <el-table-column label="是否开放" align="center" width="320">
          </el-table-column>
          <el-table-column label="操作" align="center">
            <template slot-scope="{row}">
              <el-button size="mini" type="text" icon="el-icon-view" @click="handleEdit(row)">编辑</el-button>
            </template>
          </el-table-column>
        </el-table>
      </div>
      <div class="pagination">
        <el-pagination background @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="tableParams.pageNum" :page-sizes="[10, 20, 30, 40]" :page-size="tableParams.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="totalCount">
        </el-pagination>
      </div>
    </div>
    <!-- 编辑 -->
    <editDialog v-if="editDialog" :dialogShow="editDialog" :form="form" @close="close"></editDialog>
  </div>
</template>

<script>
import { getRequiresTime, timestampToTime1 } from "@/utils/index";
import editDialog from "./components/editDialog.vue";
export default {
  components: { editDialog },
  name: "index",
  data() {
    return {
      tableParams: {
        pageNum: 1,
        pageSize: 10,
      },
      // 总数
      totalCount: 0,
      // 表格数据
      tableData: [
        {
          name: "生态空间",
          indexX: 1,
          tableData: [
            {
              itemName: "11",
              itemIndexX: 1,
              itemOpen1: false,
              itemOpen2: true,
            },
            {
              itemName: "22",
              itemIndexX: 2,
              itemOpen1: false,
              itemOpen2: true,
            },
            {
              itemName: "33",
              itemIndexX: 3,
              itemOpen1: false,
              itemOpen2: true,
            },
          ],
        },
      ],
      editDialog: false,
      form: {},
    };
  },
  created() {
    this.getListData();
  },
  mounted() {},
  methods: {
    // 获取数据
    getListData() {},
    // 查询
    handleQuery() {
      this.tableParams.pageNum = 1;
      this.tableParams.pageSize = 10;
      this.getListData();
    },
    // 图层状态开关
    handleOpen1(val) {
      let titleName = "开启";
      if (val.itemOpen1 == true) {
        titleName = "开启后该图层将进行展示,是否确认";
      } else {
        titleName = "关闭后该图层将不进行展示,是否确认";
      }
      this.$confirm(`${titleName}`, "操作确认", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
        confirmButtonClass: "confirm-button-sure",
        cancelButtonClass: "confirm-button-cancel",
      })
        .then(() => {
          console.log("确定", val);
          val.itemOpen1 = !val.itemOpen1;
        })
        .catch(() => {
          console.log("取消", val);
        });
    },
    // 是否开放开关
    handleOpen2(val) {
      let titleName = "开启";
      if (val.itemOpen2 == true) {
        titleName = "开启后该图层将公开展示,是否确认";
      } else {
        titleName = "关闭后该图层将不公开展示,是否确认";
      }
      this.$confirm(`${titleName}`, "操作确认", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
        confirmButtonClass: "confirm-button-sure",
        cancelButtonClass: "confirm-button-cancel",
      })
        .then(() => {
          console.log("确定", val);
          val.itemOpen2 = !val.itemOpen2;
        })
        .catch(() => {
          console.log("取消", val);
        });
    },
    // 编辑
    handleEdit(val) {
      this.form = val
      this.editDialog = true;
    },
    // 每页几条数据
    handleSizeChange(val) {
      this.tableParams.pageSize = val;
      this.getListData();
    },
    // 当前为第几页
    handleCurrentChange(val) {
      this.tableParams.pageNum = val;
      this.getListData();
    },
    // 关闭弹窗
    close(val) {
      this.editDialog = val;
      this.getListData();
    },
  },
};
</script>

<style lang="scss" scoped>
.table-list {
  margin-top: 0;
  overflow: hidden;
  .list {
    overflow: hidden;
  }
}
::v-deep .el-table__expanded-cell {
  padding: 0 !important;
}
::v-deep .inner-table {
  .el-table__cell:last-child {
    border-right: none !important;
    // border-bottom: none !important;
  }
  .el-table__cell:first-child {
    border-left: 1px solid #dfe6ec;
    // border-bottom: none !important;
  }
  .el-table__row:last-child .el-table__cell {
    border-bottom: none !important;
  }
  &::before {
    height: 0px;
  }
}
</style>

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

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

相关文章

nginx 改变您的HTTP服务器的缺省banner

可通过HTTP获取远端WWW服务信息【原理扫描】 低风险 建议您采取以下措施以降低威胁&#xff1a;* 改变您的HTTP服务器的缺省banner。 80 系统扫描漏洞修复 已nginx-1.22.1为例 1、修改源码文件 #进入之前安装nginx的源码目录 cd /usr/local/src/nginx-1.22.1/#需要修改的…

性能优化之FPS

如果每秒钟有60帧&#xff0c;那么每一帧的时间就是总时间&#xff08;1秒&#xff09;除以总帧数&#xff08;60帧&#xff09;&#xff1a; 所以&#xff1a;每帧时间1000 毫秒/60 帧≈16.67 毫秒 因此&#xff0c;如果每秒有60帧&#xff0c;那么每一帧大约需要16.67毫秒来…

Trie字典树

文章目录 什么是 T r i e Trie Trie 树一般条件 AcWing 835. Trie字符串统计CODE解释一下 i n s e r t ( ) insert() insert() 函数 i d x idx idx 的意义 什么是 T r i e Trie Trie 树 一种树结构&#xff0c;用来存储字符串&#xff0c;能够查询某字符串是否存在 由一个统…

国内如何访问github

1 购买一台美国硅谷的服务器 https://account.aliyun.com/login/login.htm?oauth_callbackhttps%3A%2F%2Fecs-buy.aliyun.com%2Fecs%3Fspm%3D5176.8789780.J_4267641240.2.721e45b559Ww1z%26accounttraceid%3Def6b6cc734bc49f896017a234071bfd9bctf 记得配置公网的ip&#xf…

MySQL进阶知识:SQL性能优化

目录 SQL性能分析 SQL执行频率 慢查询日志 profile详情 explain执行计划 索引的使用 最左前缀法则 范围查询 索引列运算 字符串加引号 模糊查询 or连接的条件 数据分布影响 SQL提示 覆盖索引 前缀索引 索引设计原则 SQL优化 insert优化 主键优化 页分裂 …

Agent举例与应用

什么是Agent OpenAI 应用研究主管 Lilian Weng 在一篇长文中提出了 Agent LLM&#xff08;大型语言模型&#xff09;记忆规划技能工具使用这一概念&#xff0c;并详细解释了Agent的每个模块的功能。她对Agent未来的应用前景充满信心&#xff0c;但也表明到挑战无处不在。 现…

yolov5利用yaml文件生成模型

一、yolov5的yaml文件构成 yaml文件如下图 不论是backbone还是head&#xff0c;每一行都由一个列表组成&#xff0c;列表里面有四个元素&#xff0c;另外&#xff0c;还有两个参数depth和width。在搭建模型的时候&#xff0c;会利用每一行的信息生成一个模块&#xff0c;并按照…

QT QGraphicsItem 图元覆盖导致鼠标点击事件不能传递到被覆盖图元

一、概述 在日常开发中&#xff0c;遇到这样一个问题&#xff0c;线图元和引脚图元重叠&#xff0c;导致点击引脚图元&#xff0c;没有进入引脚图元的鼠标点击事件中。 二、产生原因 如果您的 QGraphicsItem 上有一个图元覆盖了它&#xff0c;可能会导致鼠标事件无法正常触发…

跟国外客户沟通用词不同,效果可能也不同

每次和客户商量好所需要的商品的细节后&#xff0c;到了开支付链接的阶段&#xff0c;我都会习惯的说&#xff1a;shall we open the payment link for you now? 其实这句话是站在我们销售的立场上来说的&#xff0c;或者说是直接从汉语翻译成英语的句式。 但是最近我却突然想…

内存占用高排查

一、定位内存占用高的进程 top指令是最常见的检测系统运行状态的指令&#xff0c;但是因为展示界面和实时刷新的限制&#xff0c;则通过top指令不一定能够发现占用的内存很高的进程。因此&#xff0c;我们使用ps aux指令检索当前系统下的所有运行的进程。 • 下述指令查看系统…

样品实验Celloxide2021P环脂肪族环氧树脂TDS说明书

样品实验Celloxide2021P环脂肪族环氧树脂TDS说明书 200克 500克 1KG/瓶

c#把bitmap格式转换为其他格式图片

增加引用命名空间 using System.Drawing.Imaging; 打开对话框的方式读入bmp格式图片&#xff0c;转换为其他格式。 也可以直接传入图片名称。 OpenFileDialog ofd new OpenFileDialog();ofd.Title "打开对话框";ofd.InitialDirectory "D:/";ofd.Filt…

强化学习-DQN

网上看来很多&#xff0c;但是还是觉得这篇文章将得最好&#xff1a; 可视化强化学习解释 - Deep Q Networks&#xff0c;循序渐进 |Ketan Doshi 博客 (ketanhdoshi.github.io)

Qt串口助手

QT5 串口助手 ​ 由于C课程作业的需要&#xff0c;用QT5写了个简陋的串口助手。只作为一个简单的案例以供参考&#xff0c;默认读者具有C基础和了解简单的Qt操作。 功能展示 【用QT写了个简单的串口助手】 准备工作 Qt自带有<QSerialPort> 库, 可以方便地配置和调用…

招募 品牌设计师:最具创造力、破坏性、颠覆性

PIX Moving 寻 品牌设计师 重点要求「有破坏性」 设计需求 LOGO VI 市场方向 面向欧洲 案例参考 设计要求 &#xff5c; 这辆充满了创意和激情的 NEV 被命名为 Solo&#xff0c;它是 Z 世代用户的个人移动空间&#xff0c;强调个体的力量与价值。产品特征为去中心化创造、…

Zookeeper从零入门笔记

一、入门 1. 概述 2. 特点 3. 数据结构 4. 应用场景 统一命名服务&#xff1a;nginx也可以实现 统一配置管理&#xff1a; 统一集群管理&#xff1a; 服务器动态上下线&#xff1a; 软负载均衡&#xff1a; 二、本地 1.安装 2. 参数解读 三、集群操作 3.1.1 集群安装…

分享:大数据方向学生学徒参与条件

学生学徒制的实施旨在解决当前新技术企业招聘技能人才难和青年就业难的结构性矛盾&#xff0c;通过生态链链主企业携手院校共同解决毕业年度学生就业问题&#xff0c;按照学生个人意愿&#xff0c;建立以就业导向的学生学徒制关系&#xff0c;签订学徒培养协议确定学生就业岗位…

采购业务中的组织概述

目录 一、采购和库存管理中组织单位的概览二、企业的组织结构三、采购中组织结构3.1采购组织3.2采购组 一、采购和库存管理中组织单位的概览 1、 客户端&#xff1a;在SAP ERP系统中&#xff0c;客户端通过三位数字定义&#xff0c;并代表这独立的数据记录和独立的业务流程。客…

【带头学C++】----- 九、类和对象 ---- 9.1 类和对象的基本概念----(9.1.4---9.1.6)

目录 9.1.4 设计立方体类 ​编辑 9.1.5 成员函数在类的外部实现 9.1.6 类在其他源文件的实现步骤&#xff08;实现类在不同文件的实现&#xff0c;后续引出构造函数&#xff09; 注意:类定义在同文件testclass.h中&#xff0c;而testclass.cpp是用来实现&#xff08;声明&…

JAVA基础进阶(三)

一、权限修饰符的访问权限 需要特别注意的是: 被private修饰的成员变量以及成员方法只能在本类中进行调用&#xff0c;所以在其他类中创建本类对象,无法直接访问私有成员变量和成员方法,只能通过set、get方法间接访问。被public修饰的成员变量以及成员方法可以在任意地方被调用…