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>
相关推荐
鹏多多4 小时前
React无限滚动插件react-infinite-scroll-component的配置+优化+避坑指南
前端·javascript·react.js
不会算法的小灰4 小时前
HTML盒子模型详解
前端·html
lifejump4 小时前
文章管理系统CMS的XSS注入渗透测试(白盒)
前端·web安全·xss·安全性测试
华仔啊5 小时前
Vue3 登录页还能这么丝滑?这个 hover 效果太惊艳了
前端·css·vue.js
IT_陈寒5 小时前
JavaScript引擎优化:5个90%开发者都不知道的V8隐藏性能技巧
前端·人工智能·后端
云和数据.ChenGuang5 小时前
Component template requires a root element, rather than just错误
前端·javascript·vue.js
mCell5 小时前
为博客添加 RSS 订阅
前端·vitepress·rss
艾小码5 小时前
告别JS初学者噩梦:这样写流程控制和函数才叫优雅
前端·javascript
sdgsdgdsgc7 小时前
Next.js企业级应用开发:SSR、ISR与性能监控方案
开发语言·前端·javascript
哲此一生9847 小时前
搭建Vue3工程(去除不必要的文件)
前端·javascript·vue.js