vue读取excel文件数据

1、文件上传按钮 ,这里用的是elment组件库,所以按钮是el-button,根据自己所使用的酌情更改就行

         <input
            type="file"
            id="fileInputId"
            ref="fileInputefRef"
            accept=".xlsx,.xls"
            @change="readFileKoc"
            style="display: none"
          />
          <el-button
            type="primary"
            onclick="
                  event.preventDefault();
                  fileInputId.click();
                "
          >
           选择本地素材文件
          </el-button>

1、安装库:

npm install xlsx

2、导入库 

import * as XLSX from 'xlsx';

3、获取文件内容

//组件实例化

const fileInputefRef = ref(); 

// 上传表格

const readFileKoc = () => {

  const file = fileInputefRef.value.files[0];   //获取文件

  const reader = new FileReader();

  reader.onload = (e) => {

    const data = new Uint8Array(e.target.result);

    const workbook = XLSX.read(data, { type: "array" });

    const worksheet = workbook.Sheets[workbook.SheetNames[0]];

    const jsonData = XLSX.utils.sheet_to_json(worksheet, { raw: true });

    if (jsonData[0] == undefined) {

      ElMessage.error("请确定上传文件内容不为空");

      return;

    } else {

    console.log(jsonData);  //文件内容内容

    }

  };

  reader.readAsArrayBuffer(file);

};

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在Vue读取Excel文件并回显,可以使用第一种方法,即前端解析文件后将数据返回给后端。以下是一个简单的示例代码: 1. 首先,需要在Vue组件中定义一个方法来处理上传文件: ```javascript methods: { handleFileUpload(event) { const file = event.target.files\[0\]; const reader = new FileReader(); reader.onload = (e) => { const data = new Uint8Array(e.target.result); const workbook = XLSX.read(data, { type: 'array' }); const worksheet = workbook.Sheets\[workbook.SheetNames\[0\]\]; const jsonData = XLSX.utils.sheet_to_json(worksheet, { header: 1 }); // 在这里可以对jsonData进行处理,比如将数据保存到data中 this.data = jsonData; }; reader.readAsArrayBuffer(file); } } ``` 2. 在模板中添加一个文件上传的input元素,并绑定change事件: ```html <template> <div> <input type="file" @change="handleFileUpload"> <!-- 在这里可以使用this.data来回显Excel文件数据 --> </div> </template> ``` 这样,当用户选择一个Excel文件后,文件将被读取并解析,数据将保存在Vue组件的data属性中,你可以根据需要对数据进行处理和回显。请注意,上述代码中使用了XLSX库来处理Excel文件,你需要在项目中引入该库。 #### 引用[.reference_title] - *1* *3* [Vue中如何导入并读取Excel数据](https://blog.csdn.net/a736755244/article/details/99568133)[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^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Vue 读取excel文件的两种方式](https://blog.csdn.net/noeal/article/details/127995380)[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^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值