index.vue 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <template>
  2. <base-side-page
  3. @cancel="cancelSidePage"
  4. :title="$t('network.ssl_certificate')"
  5. icon="res-ssl-certificate"
  6. :res-name="detailData.name"
  7. :current-tab="params.windowData.currentTab"
  8. :loaded="loaded"
  9. :tabs="detailTabs"
  10. @tab-change="handleTabChange">
  11. <template v-slot:actions>
  12. <actions
  13. :options="singleActions"
  14. :row="detailData"
  15. :before-show-menu="beforeShowMenu"
  16. button-type="link"
  17. button-size="small" />
  18. </template>
  19. <component :is="params.windowData.currentTab" :res-id="data.id" :id="listId" :data="detailData" :on-manager="onManager" taskResource="compute-tasks" @tab-change="handleTabChange" />
  20. </base-side-page>
  21. </template>
  22. <script>
  23. import Actions from '@/components/PageList/Actions'
  24. import SidePageMixin from '@/mixins/sidePage'
  25. import WindowsMixin from '@/mixins/windows'
  26. import Detail from './Detail'
  27. import ColumnsMixin from '../mixins/columns'
  28. import SingleActionsMixin from '../mixins/singleActions'
  29. export default {
  30. name: 'SslCertificateSidePage',
  31. components: {
  32. Actions,
  33. Detail,
  34. },
  35. mixins: [SidePageMixin, WindowsMixin, ColumnsMixin, SingleActionsMixin],
  36. data () {
  37. return {
  38. detailTabs: [
  39. { label: this.$t('cloudenv.text_237'), key: 'detail' },
  40. { label: this.$t('cloudenv.text_15'), key: 'event-drawer' },
  41. ],
  42. }
  43. },
  44. computed: {
  45. listId () {
  46. switch (this.params.windowData.currentTab) {
  47. case 'event-drawer':
  48. return 'EventListForWafInstancesSidePage'
  49. default:
  50. return ''
  51. }
  52. },
  53. },
  54. }
  55. </script>