status.vue 950 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <script setup lang="ts">
  2. import { tableData } from "./data";
  3. const tableRowClassName = ({ rowIndex }: { rowIndex: number }) => {
  4. if (rowIndex === 1 || rowIndex === 5) {
  5. return "pure-warning-row";
  6. } else if (rowIndex === 3 || rowIndex === 7) {
  7. return "pure-success-row";
  8. }
  9. return "";
  10. };
  11. const columns: TableColumnList = [
  12. {
  13. label: "日期",
  14. prop: "date"
  15. },
  16. {
  17. label: "姓名",
  18. prop: "name"
  19. },
  20. {
  21. label: "地址",
  22. prop: "address"
  23. }
  24. ];
  25. </script>
  26. <template>
  27. <pure-table
  28. :data="tableData"
  29. :columns="columns"
  30. :row-class-name="tableRowClassName"
  31. />
  32. </template>
  33. <style>
  34. /* 此处样式会在全局都生效,上面 tableRowClassName 函数返回的值也就是类名必须在全局中唯一,避免样式突出 */
  35. .pure-warning-row {
  36. --el-table-tr-bg-color: var(--el-color-warning-light-9);
  37. }
  38. .pure-success-row {
  39. --el-table-tr-bg-color: var(--el-color-success-light-9);
  40. }
  41. </style>