在vue中导入Excel表

本文介绍了在Vue项目中利用js-xlsx库进行Excel操作的方法。首先,通过npm安装xlsx库,然后在main.js中全局引入,或者在具体页面局部引入。在实际使用中,可以结合element组件进行数据交互。
摘要由CSDN通过智能技术生成

使用的库  js-xlsx 纯JS即可读取和导出excel的工具库  https://github.com/SheetJS/js-xlsx

安装

  • 直接下载  dist目录下有很多个JS文件,一般情况下用xlsx.core.min.js就够了,xlsx.full.min.js则是包含了所有功能模块。直接通过script引用即可。

  • npm安装  npm install xlsx   

在main.js中引引入 import XLSX from "xlsx/dist/xlsx.full.min";

在所需页面引入  import XLSX from "xlsx";

使用

这里使用的是element组件

<el-upload
      accept
Vue导入Excel文件的代码如下所示: ```vue <template> <div> <el-upload class="upload" action="#" :show-file-list="false" :on-change="handleExcel" accept="'.xlsx','.xls'" :auto-upload="false" :headers="headers"> <el-button size="mini" type="primary">导入</el-button> </el-upload> </div> </template> <script> import { SetPDFile } from "@/api"; export default { data() { return { headers: { "Content-Type": "multipart/form-data;charset=UTF-8" } }; }, methods: { // 导入格 handleExcel(file) { let formData = new FormData(); // 声明一个FormDate对象 formData.append("formFile", file.raw); // 把文件信息放入对象 // 调用后台导入的接口 SetPDFile(formData) .then(res => { if (res.Status && res.Data) { this.$message.success("导入成功"); this.getList(); // 导入格之后可以获取导入的数据渲染到页面,此处的方法是获取导入的数据 } else { this.$message.error(res.Message); } }) .catch(err => { this.$message({ type: "error", message: "导入失败" }); }); } } }; </script> ``` 在上述代码,我们使用了`el-upload`组件来实现文件上传功能。通过设置`accept`属性来限制只能上传`.xlsx`和`.xls`格式的文件。在`handleExcel`方法,我们使用`FormData`对象来构建单数据,并将文件信息放入其。然后调用后台的导入接口`SetPDFile`来处理上传的文件。如果导入成功,我们会显示成功的提示信息,并调用`getList`方法来获取导入的数据并渲染到页面上。如果导入失败,我们会显示失败的提示信息。 #### 引用[.reference_title] - *1* *3* [Vue导入excel文件的两种方式](https://blog.csdn.net/weixin_56242672/article/details/126014300)[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^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Vue实现导入Excel功能](https://blog.csdn.net/wanghaoyingand/article/details/118396098)[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^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值