当前位置: 首页 > news >正文

antDesignPro a-table样式二次封装

antDesignPro是跟element-ui类似的一个样式框架,其本身就是一个完整的后台系统,风格样式都很统一。我使用的是antd pro vue,版本是1.7.8。公司要求使用这个框架,但是UI又有自己的一套设计。这就导致我需要对部分组件进行一定的个性化封装。
对antdesign vue的a-table进行二次封装:新建路径 components/comTable/index.vue

<script>
export default {name: 'com-table',props: {dataSource: Array,columns: Array},render () {const on = {...this.$listeners}const props = { ...this.$attrs, ...this.$props, ...{ dataSource: this.dataSource, columns: this.columns }}// slots循环const slots = Object.keys(this.$slots).map(slot => {return (<template v-slot={slot}>{ this.$slots[slot] }</template>)})const table = (<a-table props={props} scopedSlots={ this.$scopedSlots } on={on}>{slots} </a-table>)return (<div class="com-table">{ table }</div>)},
};
</script>
// 下面自定义表格样式
<style lang="less" scoped>
</style>

对comTable组件进行全局注册:路径:components/globalComponents.js

// 全局组件注册
import comTable from './comTable'
const globalComponents = {install (Vue) {Vue.component('comTable', comTable)}
}
export default globalComponents

main.js中添加

// 公共UI组件
import globalComponents from '@/views/spmSystem/components/globalComponents'
Vue.use(globalComponents)

页面使用示例,封装的comTable使用与a-table无异,仅改变了样式,方便表格样式的统一修改。

                <com-tablestyle="margin:-10px 5px 0 5px" :dataSource="dataSource" :columns="columnsThree" size="small" :pagination=false :scroll="{ x: '100%', y:170 }"><span slot="a" slot-scope="text" :style="{color:(text == '重大'?'red': ( text == '较大'?'#F98C00FE':'#D7B22EFE') )}">{{ text }}</span></com-table>

相关文章:

  • Redis总结
  • 简历上的工作经历怎么写
  • YOLOv8改进 | 2023 | 通过RFAConv重塑空间注意力(深度学习的前沿突破)
  • 解决Linux Visual Studio Code显示字体有问题/Liunx下Visual Studio Code更换字体
  • 【brpc学习实践十一】session-local与thread-local应用与brpc抽象工厂模式实践
  • Linux设置Nginx开机自启
  • 【Openstack Train安装】九、Nova安装
  • 【微服务】java 规则引擎使用详解
  • 《Effective C++》条款27
  • python 生成器的作用
  • sql手工注入漏洞测试(MYSQL)-墨者-url信息
  • express+mySql实现用户注册、登录和身份认证
  • WEB渗透—反序列化(九)
  • golang 集成logrus日志框架
  • 基于SpringBoot的旅游网站的设计与实现
  • Android优雅地处理按钮重复点击
  • IOS评论框不贴底(ios12新bug)
  • javascript 哈希表
  • npx命令介绍
  • Python_OOP
  • Python爬虫--- 1.3 BS4库的解析器
  • SegmentFault 技术周刊 Vol.27 - Git 学习宝典:程序员走江湖必备
  • Zsh 开发指南(第十四篇 文件读写)
  • 给github项目添加CI badge
  • 聊聊flink的BlobWriter
  • 前端学习笔记之观察者模式
  • 实现菜单下拉伸展折叠效果demo
  • 算法-插入排序
  • 学习JavaScript数据结构与算法 — 树
  • 【运维趟坑回忆录】vpc迁移 - 吃螃蟹之路
  • MyCAT水平分库
  • #Z2294. 打印树的直径
  • #我与Java虚拟机的故事#连载13:有这本书就够了
  • $.extend({},旧的,新的);合并对象,后面的覆盖前面的
  • (007)XHTML文档之标题——h1~h6
  • (51单片机)第五章-A/D和D/A工作原理-A/D
  • (C++)栈的链式存储结构(出栈、入栈、判空、遍历、销毁)(数据结构与算法)
  • (Matlab)使用竞争神经网络实现数据聚类
  • (仿QQ聊天消息列表加载)wp7 listbox 列表项逐一加载的一种实现方式,以及加入渐显动画...
  • (附表设计)不是我吹!超级全面的权限系统设计方案面世了
  • (附源码)springboot码头作业管理系统 毕业设计 341654
  • (免费领源码)python#django#mysql公交线路查询系统85021- 计算机毕业设计项目选题推荐
  • (三)Hyperledger Fabric 1.1安装部署-chaincode测试
  • (十八)devops持续集成开发——使用docker安装部署jenkins流水线服务
  • (四)Controller接口控制器详解(三)
  • (转)大型网站架构演变和知识体系
  • (总结)Linux下的暴力密码在线破解工具Hydra详解
  • .mysql secret在哪_MYSQL基本操作(上)
  • .NET MVC 验证码
  • .NET 的程序集加载上下文
  • .NET 反射的使用
  • .Net程序帮助文档制作
  • .net利用SQLBulkCopy进行数据库之间的大批量数据传递
  • .net实现头像缩放截取功能 -----转载自accp教程网
  • .NET文档生成工具ADB使用图文教程