v3下载导出

1.接口

// 引入

import service, {
  upload as uploadService,
  all as allService,
  getHeaders,
} from "@/utils/request";
import qs from "qs";
let baseURL = "/demo";

/**
* 导入
*/
export function rmmPorousImportForExcel(data?: any) {
  return request("/rmmPorous/importForExcel", {
    method: "post",
    data,
    baseURL,
  });
}

/**
* 导出
*/
export function rmmPorousDownLoadExcel() {
  return getRequest("/rmmPorous/downLoadExcel", {
    method: "get",
    baseURL,
  });
}

/**
* 下载模板接口
*/
export function rmmPorousGetExcelFile() {
  return getRequest("/rmmPorous/getExcelFile", {
    method: "get",
    baseURL,
  });
}

export async function getRequest(
  url: string,
  {
    data = {},
    params = {},
    method = "POST",
    headers = {},
    baseURL = process.env.VITE_APP_ONLINE || "",
    json = true,
  }
) {
  method = method || "POST";
  headers = getHeaders(headers, json);
  if (!json) data = qs.stringify(data);
  let result = await service({
    url,
    baseURL,
    method,
    headers,
    data,
    params,
    responseType: "blob",
  }).catch((err) => false);
  return result;
}

js代码

/**
 * 点击导入
 * @param options
 */
const submitUpload = async (options: any) => {
  let formData = new FormData();
  formData.append("file", options.file);
  const res = await rmmPorousImportForExcel(formData);
  console.log(res);
};

/**
 * 点击导出
 */
const onDc = async () => {
  const res: any = await rmmPorousDownLoadExcel();
  console.log(res);
  let url = window.URL.createObjectURL(new Blob([res]));

  let link = document.createElement("a");
  link.download = "模板.xlsx";

  link.href = url;
  link.target = "_blank";
  link.style.display = "none";
  document.body.appendChild(link);
  link.click();
  //释放URL对象所占资源
  window.URL.revokeObjectURL(url);
  //用完即删
  document.body.removeChild(link);
};

/**
 * 点击下载模板
 */
const onDown = async () => {
  const res: any = await rmmPorousGetExcelFile();
  let url = window.URL.createObjectURL(new Blob([res]));

  let link = document.createElement("a");
  link.download = "模板.xlsx";

  link.href = url;
  link.target = "_blank";
  link.style.display = "none";
  document.body.appendChild(link);
  link.click();
  //释放URL对象所占资源
  window.URL.revokeObjectURL(url);
  //用完即删
  document.body.removeChild(link);
};

const onPreview = () => {};
const onRemove = () => {};
const onSuccess = () => {
  // console.log(fileList);
};

dom元素

          <button class="resetBtn" @click="onDown">下载模板</button>
          <button class="resetBtn" @click="onDc">导出</button>
          <div class="upload_div">
            <el-upload
              ref="uploadRef"
              accept=".pdf,.doc,.docx,.xls,.xlsx"
              class="upload-demo"
              :http-request="submitUpload"
              :on-preview="onPreview"
              :on-remove="onRemove"
              :on-success="onSuccess"
            >
              <template #trigger>
                <button
                  class="addBtn"
                  style="margin-left: 0px; width: auto; padding: 0 4px"
                  type="button"
                >
                  导入
                </button>
              </template>
            </el-upload>
          </div>

easyexcel是一个JAVA解析和生成Excel的工具,它可以帮助我们方便地导出下载Excel表格。在使用easyexcel导出下载Excel表格时,我们可以按照以下步骤进行操作: 1. 首先,在后端的Spring Boot项目中引入easyexcel的依赖。可以在pom.xml文件中添加以下依赖项: ```xml <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> </dependency> ``` 2. 在后端的接口serviceImpl方法中,使用easyexcel提供的API来生成Excel文件。可以根据需要设置Excel的样式、表头、数据等内容。 3. 最后,将生成的Excel文件通过HTTP响应返回给前端。前端可以通过调用接口来触发下载操作,将Excel文件保存到本地。 以上是使用easyexcel导出下载Excel表格的基本步骤。如果需要更多样式调整或其他功能,可以参考easyexcel的官方文档或示例代码。\[2\]\[3\] #### 引用[.reference_title] - *1* *2* [利用EasyExcel完整的springboot +vue前后端导出下载excel表格](https://blog.csdn.net/qq_36256590/article/details/122256555)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [使用阿里EasyExcel实现上传下载、导入导出Excel](https://blog.csdn.net/Yang_RR/article/details/128176919)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值