当前位置:   article > 正文

vue antdesgin table 动态表头动态数据示例

vue antdesgin table 动态表头动态数据示例

以下是一个基于 Vue 和 Ant Design Vue 的示例,可以动态生成表格的表头和数据:

  1. <template>
  2. <div>
  3. <a-button @click="addColumn">添加列</a-button>
  4. <a-table :columns="columns" :dataSource="dataSource"></a-table>
  5. </div>
  6. </template>
  7. <script>
  8. export default {
  9. data() {
  10. return {
  11. columns: [
  12. {
  13. title: '姓名',
  14. dataIndex: 'name',
  15. key: 'name'
  16. },
  17. {
  18. title: '年龄',
  19. dataIndex: 'age',
  20. key: 'age'
  21. }
  22. ],
  23. dataSource: [
  24. {
  25. name: '张三',
  26. age: 25
  27. },
  28. {
  29. name: '李四',
  30. age: 28
  31. }
  32. ]
  33. }
  34. },
  35. methods: {
  36. addColumn() {
  37. const newColumn = {
  38. title: `列 ${this.columns.length + 1}`, // 动态生成列名
  39. dataIndex: `col_${this.columns.length + 1}`, // 动态生成列的数据键名
  40. key: `col_${this.columns.length + 1}`
  41. }
  42. this.columns.push(newColumn)
  43. // 随机生成一条数据,对应新增的列
  44. const newData = {
  45. name: `用户 ${this.dataSource.length + 1}`,
  46. age: Math.floor(Math.random() * 20) + 20,
  47. [`col_${this.columns.length}`]: Math.floor(Math.random() * 100) + 1 // 对应新增的列的值
  48. }
  49. this.dataSource.push(newData)
  50. }
  51. }
  52. }
  53. </script>

这个示例中,通过 addColumn 方法动态添加列,每次添加时生成一个新的列名和列数据键名,并把新列添加到表头中。同时,随机生成一条新数据,对应新增的列的值。通过这种方式实现了动态表头和动态数据。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/708575
推荐阅读
相关标签
  

闽ICP备14008679号