Ben Lin
2024-06-18 ebbd788fbb2c0b45d4473798efc57eec8ba74a25
src/views/demo/excel/CustomExport.vue
@@ -9,36 +9,22 @@
  </PageWrapper>
</template>
<script lang="ts">
  import { defineComponent } from 'vue';
  import { BasicTable } from '/@/components/Table';
  import { jsonToSheetXlsx, ExpExcelModal, ExportModalResult } from '/@/components/Excel';
<script lang="ts" setup>
  import { BasicTable } from '@/components/Table';
  import { jsonToSheetXlsx, ExpExcelModal, ExportModalResult } from '@/components/Excel';
  import { columns, data } from './data';
  import { useModal } from '/@/components/Modal';
  import { PageWrapper } from '/@/components/Page';
  import { useModal } from '@/components/Modal';
  import { PageWrapper } from '@/components/Page';
  export default defineComponent({
    components: { BasicTable, ExpExcelModal, PageWrapper },
    setup() {
      function defaultHeader({ filename, bookType }: ExportModalResult) {
        // 默认Object.keys(data[0])作为header
        jsonToSheetXlsx({
          data,
          filename,
          write2excelOpts: {
            bookType,
          },
        });
      }
      const [register, { openModal }] = useModal();
      return {
        defaultHeader,
        columns,
        data,
        register,
        openModal,
      };
    },
  });
  function defaultHeader({ filename, bookType }: ExportModalResult) {
    // 默认Object.keys(data[0])作为header
    jsonToSheetXlsx({
      data,
      filename,
      write2excelOpts: {
        bookType,
      },
    });
  }
  const [register, { openModal }] = useModal();
</script>