一、安装并使用:
1. 安装papaparse库,用于解析CSV文件:
2. 在组件中使用:
| import Papa from 'papaparse'; |
| Papa.parse(file, config); |
| const csv = Papa.unparse(data[, config]); |
页面结构:
| <template> |
| <el-row |
| class="pd-tb-40" |
| :gutter="20" |
| > |
| <el-col :span="12"> |
| <div class="upload-box mr-l-100"> |
| <el-upload |
| action="#" |
| accept=".csv" |
| :multiple="false" |
| :limit="1" |
| :show-file-list="false" |
| :before-upload="beforeFileUpload" |
| > |
| <el-button |
| size="small" |
| type="primary" |
| > |
| 点击上传 |
| </el-button> |
| <div |
| slot="tip" |
| class="el-upload__tip" |
| > |
| <div class="upload-file-desc"> |
| 1、一次只能上传一份csv <br /> |
| 2、文件说明: |
| <p class="mr-l-20 tx-nowrap">·xxxxxxx</p> |
| </div> |
| </div> |
| </el-upload> |
| </div> |
| </el-col> |
| <el-col :span="12"> |
| <el-table |
| :data="tableData" |
| style="width: 100%" |
| max-height="480" |
| > |
| <el-table-column |
| v-for="(header, index) in tableHeaders" |
| :key="index" |
| :prop="header" |
| :label="header" |
| ></el-table-column> |
| </el-table> |
| </el-col> |
| </el-row> |
| </template> |
逻辑部分:
| <script> |
| import Papa from "papaparse"; |
| export default { |
| data() { |
| return { |
| tableData: [], |
| tableHeaders: [], |
| }; |
| }, |
| methods: { |
| beforeFileUpload(file) { |
| |
| |
| Papa.parse(file, { |
| header: true, |
| skipEmptyLines: true, |
| encoding: "gb2312", |
| complete: result => { |
| |
| this.tableData = result.data; |
| this.tableHeaders = Object.keys(result.data[0] || {}); |
| }, |
| error: error => { |
| console.error("CSV解析错误:", error.message); |
| }, |
| }); |
| return false; |
| }, |
| }, |
| }; |
| </script> |
csv文件内容包含中文时需要注意编码,通过 encoding
属性设置,避免出现中文乱码。更多功能及配置可查看官方文档。
二、参考文档:
Papa Parse 官网地址
GitHub 地址
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程
2022-11-03 vscode实用功能汇总
2022-11-03 Vue常见问题汇总
2022-11-03 CSS常用功能汇总