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>
相关推荐
JustHappy1 小时前
古法编程秘籍(六):程序到底是怎么跑起来的?从 IO 到中断,一次讲明白
前端·后端·全栈
HYCS2 小时前
用pixi.js实现fabric.js(六):从线性代数的角度理解编辑器交互
前端·javascript·canvas
卷帘依旧2 小时前
useImperativeHandle的作用
前端
卷帘依旧2 小时前
Hooks在Fiber上的存储原理
前端
you45802 小时前
学成在线--day02 CMS前端开发(含Vue基础知识得回顾)
前端·javascript·vue.js
xiaofeichaichai2 小时前
虚拟 DOM
前端·javascript·vue.js
2401_878454532 小时前
前端高频得手写题
前端
初一初十3 小时前
vue3实现的纯前端护肤品商城网站
前端·javascript·vue.js·前端框架
卷帘依旧3 小时前
React状态管理方案怎么选
前端