Draft.vue 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <script setup lang="tsx">
  2. import { PropType, ref } from 'vue'
  3. import { Descriptions, DescriptionsSchema } from '@/components/Descriptions'
  4. import { ElImage } from 'element-plus'
  5. const props = defineProps({
  6. currentRow: {
  7. type: Object as PropType<any>,
  8. default: () => undefined
  9. }
  10. })
  11. //
  12. // const ishidden = computed(() => props.currentRow?.type === 1)
  13. // const renderTag = (enable?: boolean) => {
  14. // return <ElTag type={!enable ? 'danger' : 'success'}>{enable ? '启用' : '禁用'}</ElTag>
  15. // }
  16. const menu = [
  17. {
  18. field: 'draft[0].id',
  19. label: 'ID'
  20. },
  21. {
  22. field: 'draft[0].status_chs',
  23. label: '审核状态'
  24. },
  25. {
  26. field: 'draft[0].mark',
  27. label: '备注',
  28. span: 24
  29. },
  30. {
  31. field: 'draft[0].deign_draft_images',
  32. label: '封面',
  33. span: 24,
  34. slots: {
  35. default: (data) => {
  36. if(data.draft.length> 0) {
  37. return (
  38. <>
  39. <ElImage src={data.draft[0].deign_draft_images} preview-src-list={[data.draft[0].deign_draft_images]} style="width: 100px;height: 100px"/>
  40. </>
  41. )
  42. }else {
  43. return <></>
  44. }
  45. }
  46. }
  47. },
  48. {
  49. field: 'draft[0].deign_draft_images_chs',
  50. label: '详情图',
  51. span: 24,
  52. slots: {
  53. default: (data) => {
  54. if(data.draft.length> 0) {
  55. return (
  56. <>
  57. {data.draft[0].deign_draft_images_chs.map((item )=> {
  58. return (<><ElImage src={item} preview-src-list={[data.draft[0].deign_draft_images]} style="width: 100px;height: 100px"/></>)
  59. })}
  60. </>
  61. )
  62. }else {
  63. return <></>
  64. }
  65. }
  66. }
  67. },
  68. ]
  69. const detailSchema = ref<DescriptionsSchema[]>(menu)
  70. </script>
  71. <template>
  72. <Descriptions :schema="detailSchema" :data="currentRow || {}" />
  73. </template>