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>
相关推荐
冴羽1 小时前
今日苹果 App Store 前端源码泄露,赶紧 fork 一份看看
前端·javascript·typescript
蒜香拿铁1 小时前
Angular【router路由】
前端·javascript·angular.js
时间的情敌1 小时前
Vite 大型项目优化方案
vue.js
brzhang1 小时前
读懂 MiniMax Agent 的设计逻辑,然后我复刻了一个MiniMax Agent
前端·后端·架构
西洼工作室1 小时前
高效管理搜索历史:Vue持久化实践
前端·javascript·vue.js
广州华水科技2 小时前
北斗形变监测传感器在水库安全中的应用及技术优势分析
前端
开发者如是说2 小时前
Compose 开发桌面程序的一些问题
前端·架构
旺代2 小时前
Token 存储与安全防护
前端
洋不写bug3 小时前
html实现简历信息填写界面
前端·html
三十_A3 小时前
【无标题】
前端·后端·node.js