首页 > 其他分享 >vue3 + xlsx 实现 excel 导入web页面解析成json数据

vue3 + xlsx 实现 excel 导入web页面解析成json数据

时间:2023-12-21 16:25:07浏览次数:38  
标签:xlsx sheet web excel fileIipt json let workbook

vue3 + xlsx 实现 excel 导入web页面并解析成json数据

fileIipt 动态创建的标签,一定要用户点击事件触发,不然文件选择框的弹出会被拦截,无法弹出。意思就是下面这段关键代码要用一个事件区触发执行,不能主动执行(比如:vue的钩子)

import * as XLSX from 'xlsx'  // v:"^0.18.5"

let fileIipt = document.createElement('input');
fileIipt.type = 'file';
fileIipt.onchange = (evt) => {
    var reader = new FileReader();
    reader.readAsBinaryString(evt.target.files[0]);
    let workbook
    let data
    let sheetData = []
    reader.onload = function(ev) {
      try {
        data = ev.target.result
        console.log(data);
        workbook = XLSX.read(data, {
          type: 'binary'
        })
        console.log(workbook);
        // 以二进制流方式读取得到整份excel表格对象
        //persons = []; // 存储获取到的数据
      } catch (e) {
        console.log('err', e);
        return;
      }
      // 表格的表格范围,可用于判断表头是否数量是否正确
      // 遍历每张表读取
      for (var sheet in workbook.Sheets) {
        if (workbook.Sheets.hasOwnProperty(sheet)) {
          sheetData = sheetData.concat(XLSX.utils.sheet_to_json(workbook.Sheets[sheet]))
            //break; // 如果只取第一张表,就取消注释这行
        }
      }
    }
  }
  fileIipt.click();

标签:xlsx,sheet,web,excel,fileIipt,json,let,workbook
From: https://www.cnblogs.com/frogblog/p/17919330.html

相关文章

  • Excel动态图表有多少种类型,你知道哪些?
    折线图:折线图是最常见的动态图表类型之一,它可以清晰地展现数据随时间变化的趋势。在Excel中,您可以轻松创建动态折线图,使数据的变化更加生动。柱状图:动态柱状图可以清晰地比较不同类别的数据,并随着数据的变化而自动更新。这种图表类型在展示多个数据项之间的对比时非常有用。饼图:......
  • 什么是Web 应用程序渗透测试?
    Web应用程序渗透测试,也称为Web渗透测试或简称Web应用程序渗透测试,是一种涉及评估 Web应用程序和网站安全性的网络安全实践。这是一种主动识别恶意攻击者可能利用的漏洞和弱点的方法。–Web应用程序安全评估Web 渗透测试的目标是模拟对Web应用程序的真实攻击,以便在黑......
  • 前端导出export2Excel-多级表头
    1,export2Excel.js/*eslint-disable*///import{saveAs}from"file-saver";constsaveAs=require("file-saver");//importXLSXfrom"xlsx";importXLSXfrom"yxg-xlsx-style";importmomentfrom"moment&qu......
  • Java使用POI库读取或者生成Excel
    maven引入poi库,版本选4.1.2<!--excel工具--> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>${poi.version}</version> </dependency>应用,编辑excel有两种......
  • 用Python进行websocket接口测试
    我们在做接口测试时,除了常见的http接口,还有一种比较多见,就是socket接口,今天讲解下怎么用Python进行websocket接口测试。现在大多数用的都是websocket,那我们就先来安装一下websocket的安装包。pipinstallwebsocket-client 安装完之后,我们就开始我们的websocket之旅了。我们先来看......
  • python+excel接口自动化获取token并作为请求参数进行传参操作
    1、登录接口登录后返回对应token封装:importjsonimportrequestsfromutil.operation_jsonimportOperationJsonfrombase.runmethodimportRunMethodclassOperationHeader:def__init__(self,response):self.response=json.loads(response)defget_response_token(......
  • SQLSERVER导入EXCEL数据
    1、整理好对应的EXCEL表格数据,要有标题行。否则无法映射。 2、登录进入SQLSERVER数据库管理软件,选中要导入的数据库,右键-->点击任务-->选择导入数据  3、点击下一步,直到这个页面,数据源下拉选择EXCEL,选择文件路径,勾选首行包含列名称3、(1)如果点击下一步报错The'Microsof......
  • webmen等框架真的比php-fpm快吗?
    php-fpm+nginx代码<?phpusleep(100000);echo"helloworld";?>wrk-c200-t50-d10shttp://127.0.0.1/Running10stest@http://127.0.0.1/50threadsand200connectionsThreadStatsAvgStdevMax+/-......
  • Javaweb | 状态管理:Session、Cookie
    ......
  • 【SpringBootWeb入门-16】Mybatis-基础操作-多条件查询操作&XML文件配置SQL
    1、章节回顾上一篇文章我们讲解了Mybatis的增改查操作,本篇继续学习Mybatis的复杂查询操作(多条件查询)。2、增删改查操作-多条件查询操作根据条件姓名、性别、入职时间来查询员工表emp数据,其中员工姓名支持模糊匹配,性别进行精确匹配,入职时间进行范围查询,查询结果按照最后修改时间......