Detail.vue 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <template>
  2. <detail
  3. :showDesc="false"
  4. :showName="false"
  5. :hiddenKeys="['project_domain', 'tenant', 'created_at', 'updated_at']"
  6. :onManager="onManager"
  7. :data="data"
  8. :base-info="baseInfo" />
  9. </template>
  10. <script>
  11. import { k8sLabelColumn, k8sStatusColumn } from '@K8S/utils/tableColumns'
  12. export default {
  13. name: 'K8sCronJobDetail',
  14. props: {
  15. data: {
  16. type: Object,
  17. required: true,
  18. },
  19. onManager: {
  20. type: Function,
  21. required: true,
  22. },
  23. },
  24. data () {
  25. return {
  26. baseInfo: [
  27. {
  28. field: 'name',
  29. title: this.$t('k8s.text_41'),
  30. slots: {
  31. default: ({ row }) => {
  32. return [
  33. <div class='text-truncate'>
  34. <list-body-cell-wrap copy row={ this.data } onManager={ this.onManager } field='name' title={ row.name } />
  35. </div>,
  36. ]
  37. },
  38. },
  39. },
  40. k8sStatusColumn(),
  41. {
  42. field: 'cluster',
  43. title: this.$t('k8s.text_19'),
  44. },
  45. {
  46. field: 'namespace',
  47. title: this.$t('k8s.text_23'),
  48. },
  49. k8sLabelColumn(),
  50. {
  51. field: 'creationTimestamp',
  52. title: this.$t('k8s.text_74'),
  53. formatter: ({ row }) => {
  54. return (row.creationTimestamp && this.$moment(row.creationTimestamp).format()) || '-'
  55. },
  56. },
  57. ],
  58. }
  59. },
  60. }
  61. </script>