前端将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.第二种方式就是哪种第二种方式

相关推荐
里欧跑得慢1 小时前
17. Flutter Hero动画实现:让界面过渡更加优雅
前端·css·flutter·web
IT_陈寒2 小时前
Vue的这个响应式陷阱,我debug了一整天才爬出来
前端·人工智能·后端
kyriewen2 小时前
前端测试:别为了100%覆盖率而写测试,那是自欺欺人
前端·javascript·单元测试
去伪存真2 小时前
我自己写的第一个skills--project-core-standards
前端·agent
Data_Journal2 小时前
如何使用cURL更改User Agent
大数据·服务器·前端·javascript·数据库
竹林8182 小时前
wagmi v2 多链钱包切换:一个 Uniswap 仿盘项目让我踩了三天坑
前端·javascript
donecoding3 小时前
Playwright MCP 页面捕获:Snapshot、截图、HTML 到底选哪个?
前端·ai编程·前端工程化
滕青山3 小时前
在线PDF拆分工具核心JS实现
前端·javascript·vue.js
Smilezyl3 小时前
一个独立开发者,靠一份 markdown 驱动 Claude Code, 用 20 天跑通 9 个包的 monorepo 工程
前端·人工智能·github
技术崽崽3 小时前
不止有 Agent:Cursor 进阶使用技巧全解析
前端