antdVue3 封装a-table使用插槽

简单封装a-table组件,只做展示使用

公共table组件

javascript 复制代码
<template>
  <a-table :columns="columns" :data-source="data" bordered size="small" :scroll="scroll">
    <template #bodyCell="{ column, record, index }">
      <template v-if="column.dataIndex === 'index'">
        {{ index + 1 }}
      </template>
      <slot :column="column" :record="record" :index="index"></slot>
    </template>
  </a-table>
</template>

<script setup lang="ts">
import { watch, ref } from 'vue'
let props = defineProps<{ columns: any; data: any; scroll?: object }>()
const columns = props.columns
const data = ref<any>([])
const scroll = props.scroll || {}
data.value = props.data
watch(() => [...props.data], (now, old) => {
  data.value = now
})
</script>
<style scoped></style>

使用组件

数据二次处理。。。等等

javascript 复制代码
  <CommoTable :columns="realitycolumns" :data="realityData" :loading="loading" :scroll="{ y: 300 }"
                :pagination="false">
                <template #default="{ column, record, index }">
                    <template v-if="column.dataIndex === 'unitCode'">
                        {{ unitType[record.unitCode] }}
                    </template>
                </template>
            </CommoTable>
相关推荐
whatever who cares3 分钟前
CSS3 伪类和使用场景
前端·css·css3
水银嘻嘻12 分钟前
Web 自动化之 HTML & JavaScript 详解
前端·自动化·html
天天打码13 分钟前
Lynx-字节跳动跨平台框架多端兼容Android, iOS, Web 原生渲染
android·前端·javascript·ios
大G哥30 分钟前
项目中利用webpack的require.context实现批量引入/导入图片
前端·webpack·node.js
有事没事实验室1 小时前
CSS 盒子模型与元素定位
前端·css·开源·html5
浩~~1 小时前
HTML5 中实现盒子水平垂直居中的方法
java·服务器·前端
互联网搬砖老肖1 小时前
Web 架构之故障自愈方案
前端·架构·github
天上掉下来个程小白1 小时前
添加购物车-02.代码开发
java·服务器·前端·后端·spring·微信小程序·苍穹外卖
网络空间小黑2 小时前
WEB渗透测试----信息收集
服务器·前端·网络·安全·web安全·网络安全
水银嘻嘻2 小时前
web 自动化之 Unittest 应用:报告&装饰器&断言
前端·python·自动化