evTwoTable.vue 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. <template>
  2. <el-table
  3. class="expandTable"
  4. :data="dataList"
  5. style="width: 100%;z-index:1"
  6. :row-key="getRowKeys"
  7. :expand-row-keys="expands"
  8. >
  9. <el-table-column type="expand">
  10. <template slot-scope="props">
  11. <el-table :data="tableData" style="width: 100%;">
  12. <el-table-column type="selection" width="50" align="right"></el-table-column>
  13. <el-table-column prop="name" label align="right" width="150">
  14. <template slot-scope="{row}">
  15. <img class="ex-img" src="../../assets/warning.png" alt />
  16. {{row.name}}
  17. </template>
  18. </el-table-column>
  19. <el-table-column prop="a" label align="right"></el-table-column>
  20. <el-table-column prop="b" label align="right"></el-table-column>
  21. <el-table-column prop="c" label align="right"></el-table-column>
  22. <el-table-column prop="d" label align="right"></el-table-column>
  23. <el-table-column prop="e" label align="right"></el-table-column>
  24. <el-table-column prop="f" label align="center"></el-table-column>
  25. </el-table>
  26. </template>
  27. </el-table-column>
  28. <el-table-column prop="g" label align="right" width="50"></el-table-column>
  29. <el-table-column prop label="位置详情" align="right" width="100"></el-table-column>
  30. <el-table-column prop label="温度要求范围(℃)" align="right"></el-table-column>
  31. <el-table-column prop label="平均温度(℃)" align="right"></el-table-column>
  32. <el-table-column prop label="累计超限时长(分钟)" align="right"></el-table-column>
  33. <el-table-column prop label="平均超限程度(℃)" align="right"></el-table-column>
  34. <el-table-column prop label="连续超限最大时长(分钟)" align="right"></el-table-column>
  35. <el-table-column prop label="最大温差(℃)" align="center"></el-table-column>
  36. </el-table>
  37. </template>
  38. <script>
  39. export default {
  40. data() {
  41. return {
  42. getRowKeys(row) {
  43. return row.id;
  44. },
  45. expands: []
  46. // tableData: [
  47. // {
  48. // id: "1",
  49. // name: "优衣库",
  50. // a: "22-26",
  51. // b: "26.5",
  52. // c: "37",
  53. // d: "-1",
  54. // e: "12",
  55. // f: "-3",
  56. // g: "F3"
  57. // },
  58. // {
  59. // id: "3",
  60. // name: "优衣库",
  61. // a: "22-26",
  62. // b: "26.5",
  63. // c: "37",
  64. // d: "1",
  65. // e: "12",
  66. // f: "-3",
  67. // g: "F2"
  68. // }
  69. // ]
  70. };
  71. },
  72. methods: {
  73. init() {
  74. if (this.tableData) {
  75. this.tableData.forEach(item => {
  76. if (item.d > 0) {
  77. this.expands.push(item.id);
  78. }
  79. });
  80. }
  81. }
  82. },
  83. mounted() {
  84. this.init();
  85. }
  86. };
  87. </script>
  88. <style lang="scss" scoped>
  89. .expandTable {
  90. .ex-img {
  91. width: 22px;
  92. height: 22px;
  93. vertical-align: middle;
  94. }
  95. }
  96. </style>
  97. <style lang="scss">
  98. .expandTable {
  99. .el-table thead {
  100. display: none;
  101. }
  102. .el-table__expanded-cell {
  103. padding: 0;
  104. }
  105. }
  106. </style>