vue3中读取本地excel文件内容
背景
做后台项目时避免不了excel文件上传,有的还要求对文件内容做校验,或者把文件内容转成数据上传保存.
操作
1.引入xlsx插件,最好安装指定版本,否则会报错
npm i xlsx@0.16.0 -save
2.页面引入
import XLSX from 'xlsx'
3.页面触发
<el-upload class="upload-demo" ref="upload" accept=".xls,.xlsx" action="" :on-change="uploadExcel"
:show-file-list="false" :auto-upload="false">
<el-button slot="trigger" size="large">导入excel</el-button>
</el-upload>
4.使用处理数据
import { ref } from 'vue'
import XLSX from 'xlsx'
const menuData: any = ref([])
const tableData: any = ref([])
const uploadExcel = (file: any, fileList: any) => {
let files = { 0: file.raw }
const fileReader = new FileReader()
fileReader.onload = (e: any) => {
try {
const workbook = XLSX.read(e.target.result, {
type: 'binary'
})
const wsname = workbook.SheetNames[0] // 取第一张表
const ws: any = XLSX.utils.sheet_to_json(workbook.Sheets[wsname])// 生成json表格内容
const data: any = []
ws.map((item: any) => {
let obj: any = {
arr:[]
}
Object.values(item).map((child: any, index: number) => {
obj.arr.push('name' + index)
obj[`name${index}`] = child
})
data.push(obj)
})
tableData.value = data
menuData.value = Object.keys(ws[0])
} catch (err) {
console.log(err)
}
}
fileReader.readAsBinaryString(files[0])
}
excel文件如下:

读取后,处理数据展示如下:

具体代码地址:https://gitee.com/yuexiayunsheng/vue3learn/blob/master/src/views/GetExcelContent.vue
vue3中读取本地excel文件内容的更多相关文章
- 读取Excel二进制写入DB,并从DB中读取生成Excel文件
namespace SendMailSMSService { class Program { static void Main(string[] args) { var connString = Sq ...
- JS 读取本地Excel文件
首先我们先引用一个Excel的类库xlsx.full.min.js 中间处理: 'use strict'; var ExcelReader = { isFirstRead: true, fixdata ...
- excel to datatable (c#用NPOI将excel文件内容读取到datatable数据表中)
将excel文件内容读取到datatable数据表中,支持97-2003和2007两种版本的excel 1.第一种是根据excel文件路径读取excel并返回datatable /// <sum ...
- PHP读取Excel文件内容
PHP读取Excel文件内容 项目需要读取Excel的内容,从百度搜索了下,主要有两个选择,第一个是PHPExcelReader,另外一个是PHPExcel. PHPExcelReader比较 ...
- 使用POI读取excel文件内容
1.前言 项目中要求读取excel文件内容,并将其转化为xml格式.常见读取excel文档一般使用POI和JExcelAPI这两个工具.这里我们介绍使用POI实现读取excel文档. 2.代码实例: ...
- 【转】flash air中读取本地文件的三种方法
actionscript中读取本地文件操作有两种代码如下 1.使用File和FileStream两个类,FileStream负责读取数据的所以操作:(同步操作) var stream:FileStre ...
- ZK中使用JS读取客户端txt文件内容问题
最近写一个需求时遇到一个问题,用户需要通过点击一个按钮直接读取他自己电脑上D盘的一个txt文件内容显示到页面,因为项目现在是用ZK写的.我对于ZK也是刚刚了解不就,很多都还不是很熟.起初我是想用io流 ...
- [原创]VBA实现汇总excel,将多个Excel文件内容复制到一个Excel文件中
功能:遍历用户指定的文件夹,把文件夹中所有的excel文件的第一个表格的数据复制到本excel文件中.注意,每个excel文件中有效数据行的判断标准是A列的最后一个有数据的单元格的行号,比如A列到第1 ...
- 根据NPOI 读取一个excel 文件的多个Sheet
大家都知道NPOI组件可以再你本地没有安装office的情况下来 读取,创建excel文件.但是大家一般都是只默认读取一个excel文件的第一个sheet.那么如果要读取一个excel 的所有shee ...
- JXL包大解析;Java程序生成excel文件和解析excel文件内容
最近需求变化,需要把excel导入 我以前没有做过,所以我查了一些资料 和参考别人的代码 以下是多种方式: import java.io.File; import java.io.FileInputS ...
随机推荐
- ESP-01S无线下载器
文章结构: 项目概述 成品预览 项目框架 硬件资料,代码 项目槽点 -项目概述- 最开始学习51的时候,总是"冷启动",手动按动开关重启,下载一次程序重启一次,觉得很麻烦 而且另一 ...
- Zotero自定义引文样式
注意 在实际使用中发现还是有许多与要求不同的地方,之后会再次进行修改,特此记录 -----2022/11/28 16:57 目标格式: 期刊:[序号]作者.题名[J].刊名,出版年份,卷号 ( 期号 ...
- JavaScript 中 this 关键字的作用和如何改变其上下文
一.this 关键字的作用 JavaScript 中的 this 关键字引用了所在函数正在被调用时的对象.在不同的上下文中,this 的指向会发生变化. 在全局上下文中,this 指向全局对象(在浏览 ...
- py教学之列表
列表是什么 list 是一些元素按照一定顺序排列的元素集合 序列是 Python 中最基本的数据结构. 序列中的每个值都有对应的位置值,称之为索引,第一个索引是 0,第二个索引是 1,依此类推. Py ...
- 腾讯出品小程序自动化测试框架【Minium】系列(四)API详解(上)
写在前面 不知道是不是因为之前出过书的原因,在写教程之类的文章,会潜意识有自带目录和章节的感觉在里面,有点说不出的感觉吧. 上篇文章我们介绍了关于元素定位的使用方法,这篇文章将为大家分享关于Miniu ...
- Linux操作系统导学专栏(一)——专栏要讲些什么?
该专栏是为Linux内核开发编程做铺垫,如果你对操作系统很熟悉,想了解一些Linux内核发开的知识,请直接跳转至<Linux内核编程专栏>,如果你对Linux内核编程也很熟悉,想了解L ...
- 顶层QWidget弹窗设置背景为透明,透明部分为黑色。
setAttribute(Qt::WA_TranslucentBackground); 设置此属性,解决.
- 本地python环境安装kylin项目依赖时报认证错误信息
问题描述:项目需要连接kylin数据库查询数据,本地安装kylin项目的依赖环境后报认证错误 python版本3.7 32位 pycharm版本 2022版 成功方法: 更换解释器选择无解释器,创建虚 ...
- centos7 在线或离线安装python3
1.前言 本文会使用到yum和wget,如果两者都不能用,参考安装教程 https://www.cnblogs.com/dennisdong/p/17037248.html 2.查看是否安装wget和 ...
- 使用 DirectSound 录制麦克风音频
使用 DirectSound 录制麦克风音频 本文所有代码均可在以下仓库找到 https://gitcode.net/PeaZomboss/learnaudios 目录是demo/dscapture ...