index.vue 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <template>
  2. <page-list
  3. :list="list"
  4. :columns="columns" />
  5. </template>
  6. <script>
  7. import WindowsMixin from '@/mixins/windows'
  8. import ListMixin from '@/mixins/list'
  9. export default {
  10. name: 'K8SEventList',
  11. mixins: [WindowsMixin, ListMixin],
  12. props: {
  13. id: String,
  14. getParams: {
  15. type: Object,
  16. },
  17. },
  18. data () {
  19. return {
  20. list: this.$list.createList(this, {
  21. id: this.id,
  22. resource: 'k8s_events',
  23. getParams: this.getParams,
  24. apiVersion: 'v1',
  25. }),
  26. columns: [
  27. {
  28. field: 'message',
  29. title: this.$t('k8s.text_72'),
  30. minWidth: 150,
  31. showOverflow: 'title',
  32. },
  33. {
  34. field: 'sourceComponent',
  35. title: this.$t('k8s.text_73'),
  36. width: 120,
  37. },
  38. {
  39. field: 'reason',
  40. title: this.$t('k8s.text_39'),
  41. minWidth: 70,
  42. showOverflow: 'ellipsis',
  43. },
  44. {
  45. field: 'creationTimestamp',
  46. title: this.$t('k8s.text_74'),
  47. minWidth: 100,
  48. showOverflow: 'ellipsis',
  49. formatter: ({ row }) => {
  50. const value = row.creationTimestamp
  51. return this.$moment(value).fromNow()
  52. },
  53. },
  54. ],
  55. }
  56. },
  57. created () {
  58. this.list.fetchData()
  59. },
  60. }
  61. </script>