【Ant Design Vue V3版本填坑记录二】Table 组件 column.customRender 报错

简介: 【Ant Design Vue V3版本填坑记录二】Table 组件 column.customRender 报错

数字化管理平台

Vue3+Vite+VueRouter+Pinia+Axios+ElementPlus

权限系统-商城

个人博客地址

column.customRender 用于生成复杂数据的渲染函数,V3 版本也对齐做了升级,用法有所不同。

b4f01609c4a641e6b0cddfb99c2b8bdf.png

fd20c32ff5ff45c8abe6e644b7be0200.png

有如下数据

const data = reactive([{
  tid: 1,
  tname: "Magnum",
  tgender: 0,
  tage: 23
}])

想要根据性别标识(0,1),展示对应的结果(男,女):

bef707e38b6d4661a80919d09c3e647d.png

1. V1 版本处理方式

const columns = reactive([{
  dataIndex: 'tid',
  title: "序号",
  align: "center"
}, {
  dataIndex: 'tname',
  title: "姓名",
  align: "center"
}, {
  dataIndex: 'tgender',
  title: "性别",
  align: "center",
  customRender: (text, record) => {
    return <span>{ record.tgender === 0 ? '男' : '女' }</span>
  }   
}, {
  dataIndex: 'tage',
  title: "年龄",
  align: "center"
}, {
  dataIndex: 'operation',
  title: "操作",
  align: "center",
}])

上面的方式放到 Vite+Vue3+Ant V3 版本上,则不兼容,页面和控制台报错如下:

7d2335482bcc4e3d9ca1ab6a2c3b07a5.png

2. V3 版本写法

const columns = reactive([{
  dataIndex: 'tid',
  title: "序号",
  align: "center"
}, {
  dataIndex: 'tname',
  title: "姓名",
  align: "center"
}, {
  dataIndex: 'tgender',
  title: "性别",
  align: "center",
  customRender:({text, record, index}) => {
    console.log(text, record, index)
    return record.tgender === 0 ? '男' : '女'
  },  
}, {
  dataIndex: 'tage',
  title: "年龄",
  align: "center"
}, {
  dataIndex: 'operation',
  title: "操作",
  align: "center",
}])

Tip:个人看来,V3 版本的写法更加适合个人的开发习惯,也更加简洁。

相关文章
|
21天前
|
缓存 JavaScript UED
Vue3中v-model在处理自定义组件双向数据绑定时有哪些注意事项?
在使用`v-model`处理自定义组件双向数据绑定时,要仔细考虑各种因素,确保数据的准确传递和更新,同时提供良好的用户体验和代码可维护性。通过合理的设计和注意事项的遵循,能够更好地发挥`v-model`的优势,实现高效的双向数据绑定效果。
126 64
|
21天前
|
前端开发 JavaScript 测试技术
Vue3中v-model在处理自定义组件双向数据绑定时,如何避免循环引用?
Web 组件化是一种有效的开发方法,可以提高项目的质量、效率和可维护性。在实际项目中,要结合项目的具体情况,合理应用 Web 组件化的理念和技术,实现项目的成功实施和交付。通过不断地探索和实践,将 Web 组件化的优势充分发挥出来,为前端开发领域的发展做出贡献。
28 8
|
21天前
|
JavaScript
在 Vue 3 中,如何使用 v-model 来处理自定义组件的双向数据绑定?
需要注意的是,在实际开发中,根据具体的业务需求和组件设计,可能需要对上述步骤进行适当的调整和优化,以确保双向数据绑定的正确性和稳定性。同时,深入理解 Vue 3 的响应式机制和组件通信原理,将有助于更好地运用 `v-model` 实现自定义组件的双向数据绑定。
|
7月前
|
JavaScript API
【vue实战项目】通用管理系统:api封装、404页
【vue实战项目】通用管理系统:api封装、404页
77 3
|
7月前
|
人工智能 JavaScript 前端开发
毕设项目-基于Springboot和Vue实现蛋糕商城系统(三)
毕设项目-基于Springboot和Vue实现蛋糕商城系统
|
7月前
|
JavaScript Java 关系型数据库
毕设项目-基于Springboot和Vue实现蛋糕商城系统(一)
毕设项目-基于Springboot和Vue实现蛋糕商城系统
191 0
|
7月前
|
JavaScript 前端开发 API
Vue3+Vite+TypeScript常用项目模块详解
现在无论gitee还是github,越来越多的前端开源项目采用Vue3+Vite+TypeScript+Pinia+Elementplus+axios+Sass(css预编译语言等),其中还有各种项目配置比如eslint 校验代码工具配置等等,而我们想要进行前端项目的二次开发,就必须了解会使用这些东西,所以作者写了这篇文章进行简单的介绍。
152 0
Vue3+Vite+TypeScript常用项目模块详解
|
7月前
|
设计模式 JavaScript
探索 Vue Mixin 的世界:如何轻松复用代码并提高项目性能(上)
探索 Vue Mixin 的世界:如何轻松复用代码并提高项目性能(上)
探索 Vue Mixin 的世界:如何轻松复用代码并提高项目性能(上)
|
7月前
|
前端开发 JavaScript Java
毕业设计|基于SpringBoot+Vue的科研课题项目管理系统
毕业设计|基于SpringBoot+Vue的科研课题项目管理系统
198 1
|
7月前
|
JavaScript 前端开发
报错:关于Vue项目下载swiper插件时没有dist文件夹的问题
报错:关于Vue项目下载swiper插件时没有dist文件夹的问题
138 0