前端将xlsx转成json

  1. 第一种方式,用js方式
    1.1先安装插件
    万事都离不开插件的支持首先要安装两个插件

1.2. 安装xlsx

javascript 复制代码
cnpm install xlsx --save

注:这块我用的cnpm,原生的是npm,因为镜像的问题安装了cnpm,至于怎么装网上一搜一大堆

1.3安装js doc插件

安装js doc插件。在vscode的插件管理,搜索Add jsdoc comments,然后安装就可以

注:这个插件是给vscode写js代码时提示用的,新手建议装一下,老鸟的话你随便

1.4.写上传文件的按钮

我这块儿没用element plus,后边第二种方式会用

样式这块用的js

javascript 复制代码
  <div>
    <span>
      <el-icon class="el-icon--upload"><upload-filled /></el-icon>
      <input type="file" @change="handleChange">
    </span>
  </div>

1.5.逻辑代码,每一行都有注释

javascript 复制代码
import * as XLSX from "xlsx"

const handleChange = (e) => {
  // 得到上传文件的信息
  let fileObj = e.target.files[0]
  // console.log(fileObj)
  // FileReader 对象是专门操作二进制数据的,主要用于将文件内容读入内存当中
  const fileReader = new FileReader()
  // 将文件内容读成二进制数据放到内存当中
  fileReader.readAsArrayBuffer(fileObj)
  // 读取文件的内容
  fileReader.onload = (event) =>{
    // 读进来之后是一个二进制文件
    const fileData = event.target.result;
    // 用XLSX以二进制的方式取出电子表格字节中的数据
    const workbook = XLSX.read(fileData,{
      type:"binary",
    })
    // 按选项卡顺序列出工作表名称,也就是工作簿的名称,
    const wsname = workbook.SheetNames[0];
    // console.log(wsname)
    // 从工作表创建JS值数组并解析成json数据
    const sheetJson = XLSX.utils.sheet_to_json(workbook.Sheets[wsname])
    console.log(sheetJson)
  }
}

1.6.别看广告看疗效,上图

2.第二种方式就是哪种第二种方式

相关推荐
花开盛夏^.^3 小时前
电脑打开多个浏览器Web窗口占用较大的运行内存的原因
前端·浏览器
馒头不想说话4 小时前
实体店老板的24小时AI运营员工,写、剪、发全自动,省下一整个团队工资
前端
椒哥6 小时前
一天被问几十次"允许",我统计了 517 次,然后写了个插件
前端·javascript·github
风骏时光牛马6 小时前
生成一个AI稳定性治理及疑难问题分析标题,只需要一个标题,不需要其他的任何文本。
前端
莫西干式秃头6 小时前
用 AI + threejs 写了个浏览器里的 3D 动作游戏《武来》:砍怪、放技能、开 SU7
前端·人工智能·three.js
kyriewen6 小时前
我测了 6 种防请求竞态的写法:只有 1 种真能打
前端·javascript·程序员
孟健6 小时前
用 WorkBuddy 做个人名片网页,挂上开源设计技能后效果完全不同了
前端·人工智能·ai编程
IT_陈寒7 小时前
SpringBoot自动配置的坑,这次终于爬出来了
前端·人工智能·后端
LuHang8 小时前
从天地图切换到高德地图:一次真实的底图迁移实战
前端·vue.js·cesium
用户360055579008 小时前
Kestrel_VLLM - 27 · 寄存器常驻与融合发射:两次「少发一次」
前端