ant-design中表格合并单元格并填充按钮

news/2024/7/10 0:02:57 标签: vue

ant-design中表格合并单元格并填充按钮

效果如下

在这里插入图片描述

代码如下

<template>
  <a-card>
    <a-table
      :columns="columns"
      :data-source="data"
      @change="changePage"
      :rowKey="(record) => { return record.seckill_goods_id;}"
      :customRow="handleClickRow"
    >
      <template
        slot="name"
        slot-scope="text"
      >
        <a>{{ text }}</a>
      </template>
    </a-table>
  </a-card>
</template>
<script>
const data = [
  {
    key: "1",
    name: "John Brown",
    age: 32,
    tel: "0571-22098909",
    phone: 18889898989,
    address: "New York No. 1 Lake Park",
  },
  {
    key: "2",
    name: "Jim Green",
    tel: "0571-22098333",
    phone: 18889898888,
    age: 42,
    address: "London No. 1 Lake Park",
  },
  {
    key: "3",
    name: "Joe Black",
    age: 32,
    tel: "0575-22098909",
    phone: 18900010002,
    address: "Sidney No. 1 Lake Park",
  },
  {
    key: "4",
    name: "Jim Red",
    age: 18,
    tel: "0575-22098909",
    phone: 18900010002,
    address: "London No. 2 Lake Park",
  },
  {
    key: "5",
    name: "Jake White",
    age: 18,
    tel: "0575-22098909",
    phone: 18900010002,
    address: "Dublin No. 2 Lake Park",
  },
];

export default {
  data() {
    const renderContent = () => {
      return (
        <div class="long-btn">
          <a-button type="primary" block vOn:click={this.seeDetail}>
            查看信息
          </a-button>
        </div>
      );
    };
    const columns = [
      {
        title: "Name",
        dataIndex: "name",
        scopedSlots: { customRender: "name" },
      },
      {
        title: "Age",
        dataIndex: "age",
        scopedSlots: { customRender: "age" },
      },
      {
        title: "Home phone",
        dataIndex: "tel",
        customRender: (value, row, index) => {
          let obj = {
            children: renderContent(index),
            attrs: { colSpan: 2 },
          };
          return obj;
        },
      },
      {
        title: "Phone",

        dataIndex: "phone",
        customRender: (value) => {
          const obj = {
            children: value,
            attrs: { colSpan: 0 },
          };
          return obj;
        },
      },
      {
        title: "Address",
        dataIndex: "address",
        scopedSlots: { customRender: "address" },
      },
    ];
    return {
      data,
      columns,
    };
  },
  methods: {
    // 换页
    changePage(e) {
      console.log("e: ", e);
    },
    //点击了按钮,如果在合并单元格中填充按钮,这个按钮无法与这一行的数据绑定,可以结合表格的行点击事件去做,但注意这一行行内的方法可能会冒泡,所以这一行的其他事件要在点击时要加上修饰符@click.native.stop
    seeDetail() {
      console.info("点击了");
    },
    // 点击了某行,
    handleClickRow(record) {
      console.log("record: ", record);
    },
  },
};
</script>


http://www.niftyadmin.cn/n/565897.html

相关文章

EasyExcel 自定义类型转换器Converter3种加载方式(转换字段加载类型转换器、导出时加载类型转换器、加载全局类型转换器)

1 Maven依赖 <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>2.2.8</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>…

js中遍历对象的方式

js中遍历对象的方式 for…in… let object {first: 12,second: 13 } for (let item in object) {console.log(item) // first,secondconsole.log(object[item]) //12,13 }Object.key遍历 let object {first: 12,second: 13 } Object.keys(object) // first,second Object…

Visual Studio 无法直接启动带有“类库输出类型“的项目。若要调试此项目,请在此解决方案中添加一个引用库项目的可执行项目。将这个可执行项目设置为启动项目问题解决

问题描述&#xff1a; 无法直接启动带有"类库输出类型"的项目。 若要调试此项目&#xff0c;请在此解决方案中添加一个引用库项目的可执行项目。将这个可执行项目设置为启动项目。 问题分析&#xff1a; 1、解决方案没有设置启动项目&#xff0c;导致启动报…

Map与数组、对象之间的转换

Map与数组、对象之间的转换 Map转数组 const map new Map(); map.set(1,"23").set(2,"32").set(3,"45"); const arr [...map]; console.log(arr);数组转Map const arr ["foo","bar","baz"]; const arrChang…

EasyPoi 按模板写入数据导出Excel

1 Maven依赖 <!-- EasyPoi文档处理工具 --><dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-base</artifactId><version>4.4.0</version></dependency> 2 调试代码 /*** 按模板写入数据导出Excel** p…

ant-design中表头自定义添加按钮

ant-design中表头自定义添加按钮 效果如下 代码如下 <template><div><a-table:columns"column":data-source"data":pagination"false":rowKey"(record) > { return record.id;}"><templateslot"price&…

Visual Studio ID为xxx的进程当前未运行问题解决

问题描述&#xff1a; ID为13072的进程当前未运行。 问题分析&#xff1a; 1、IIS服务器无法启动&#xff0c;导致项目启动失败。 解决办法&#xff1a;关闭Visual Studio&#xff0c;重新打开Visual Studio&#xff0c;再启动项目即可。

Vusual Studio 程序“[xxx] iisexpress.exe: 程序跟踪”已退出,返回值为 0 (0x0)问题解决

问题描述&#xff1a; 程序“[13352] iisexpress.exe: 程序跟踪”已退出&#xff0c;返回值为 0 (0x0)。 问题分析&#xff1a; 1、IIS服务器无法启动&#xff0c;导致项目启动失败。 解决办法&#xff1a;关闭Visual Studio&#xff0c;重新打开Visual Studio&#xff0c;…