探索前端世界的无限可能:玩转Excel文件

🌟 前言

欢迎来到我的技术小宇宙!🌌 这里不仅是我记录技术点滴的后花园,也是我分享学习心得和项目经验的乐园。📚 无论你是技术小白还是资深大牛,这里总有一些内容能触动你的好奇心。🔍

  • 🤖 洛可可白:个人主页

  • 🔥 个人专栏:✅前端技术 ✅后端技术

  • 🏠 个人博客:洛可可白博客

  • 🐱 代码获取:bestwishes0203

  • 📷 封面壁纸:洛可可白wallpaper

在这里插入图片描述

这里写自定义目录标题

  • 探索前端世界的无限可能:玩转Excel文件
    • 引言
    • 环境准备:搭建你的Vue项目舞台
      • 使用Vue CLI创建项目
      • 使用Vite创建项目
    • 导出Excel文件
    • 导入Excel文件
    • 结论

探索前端世界的无限可能:玩转Excel文件

引言

嘿,前端小伙伴们!🌟 在这个充满创意和动态变化的数字时代,我们的前端世界变得越来越丰富多彩。从炫酷的动画到复杂的数据处理,我们几乎无所不能。今天,我们要聊的是一个小小的但非常实用的技能:如何在前端轻松地与Excel文件打交道。是的,你没听错,我们可以用Vue.js和XLSX库来实现Excel文件的导入和导出,让数据处理变得更加轻松愉快。准备好了吗?让我们一起跳进这个充满可能性的前端世界,探索如何用代码玩转Excel!🚀📊📂

环境准备:搭建你的Vue项目舞台

在我们开始这场Excel操作之旅之前,我们需要搭建一个舞台——也就是我们的Vue项目。无论你是Vue CLI的忠实粉丝,还是Vite的尝鲜者,这里都有适合你的搭建方法。让我们一起来看看如何用这两种流行工具创建Vue项目,并为接下来的Excel操作做好准备。

使用Vue CLI创建项目

如果你喜欢使用Vue CLI,这是一个稳定且功能丰富的Vue项目脚手架工具。按照以下步骤创建你的Vue项目:

  1. 安装Vue CLI:如果你还没有安装Vue CLI,可以通过以下命令全局安装:

    npm install -g @vue/cli
    

    或者,如果你更喜欢使用yarn

    yarn global add @vue/cli
    
  2. 创建Vue项目:使用Vue CLI创建一个新的Vue项目。在你喜欢的工作目录下,运行以下命令:

    vue create my-vue-project
    

    按照提示选择你需要的配置,例如Babel、Router等。

  3. 安装XLSX库:项目创建完成后,进入项目目录并安装XLSX库:

    cd my-vue-project
    npm install xlsx
    

    或者,如果你使用的是yarn

    cd my-vue-project
    yarn add xlsx
    

使用Vite创建项目

Vite是一个现代化的前端构建工具,以其快速的热重载和构建性能而闻名。如果你想要一个更现代的体验,可以按照以下步骤使用Vite创建Vue项目:

  1. 安装Vite:如果你还没有安装Vite,可以通过以下命令全局安装:

    npm install -g vite
    

    或者,如果你更喜欢使用yarn

    yarn global add vite
    
  2. 创建Vue项目:现在,我们可以用Vite来创建一个新的Vue项目。在你喜欢的工作目录下,运行以下命令:

    vite create my-vue-project --template vue
    

    这将会创建一个名为my-vue-project的新项目,并使用Vue模板。

  3. 安装XLSX库:创建项目后,我们需要进入项目目录并安装XLSX库:

    cd my-vue-project
    npm install xlsx
    

    或者,如果你使用的是yarn

    cd my-vue-project
    yarn add xlsx
    

现在,无论你选择Vue CLI还是Vite,你的Vue项目都已经准备好了,XLSX库也安装完毕。我们可以开始编写代码,实现Excel文件的导入和导出功能了。让我们继续前进,探索更多前端的奇妙之处吧!🎉🛠️📁

导出Excel文件

在Vue组件中,我们可以使用XLSX库来导出数据到Excel文件。以下是具体的实现步骤和代码示例。

  1. 准备数据:首先,我们需要准备要导出的数据。在这个例子中,我们使用Vue的ref来定义一个响应式数据数组。

  2. 创建工作表:使用XLSX库的json_to_sheet方法将JSON数据转换为工作表。

  3. 创建工作簿并添加工作表:创建一个新的工作簿,并使用book_append_sheet方法将工作表添加到工作簿中。

  4. 导出文件:最后,使用writeFile方法将工作簿导出为Excel文件。

以下是具体的代码实现:

<template><div><button @click="exportToExcel">Export to Excel</button></div>
</template><script setup>
import { ref } from 'vue';
import * as XLSX from 'xlsx';// 准备要导出的数据
const data = ref([{ name: 'John', age: 30, city: 'New York' },{ name: 'Mike', age: 25, city: 'Chicago' },{ name: 'Sara', age: 28, city: 'Los Angeles' }
]);const exportToExcel = () => {// 将数据转换为工作表const ws = XLSX.utils.json_to_sheet(data.value);// 创建工作簿并添加工作表const wb = XLSX.utils.book_new();XLSX.utils.book_append_sheet(wb, ws, "Sheet1");// 导出Excel文件XLSX.writeFile(wb, "data.xlsx");
};
</script>

导入Excel文件

除了导出Excel文件,我们也经常需要从Excel文件中导入数据。以下是如何实现Excel文件导入的步骤和代码示例。

  1. 监听文件上传事件:在模板中添加一个文件输入元素,并监听其change事件。

  2. 读取文件内容:使用FileReader对象读取用户选择的文件内容。

  3. 解析Excel文件:使用XLSX库的read方法解析文件内容,并获取工作表。

  4. 转换为JSON:使用sheet_to_json方法将工作表转换为JSON格式,以便在Vue中使用。

以下是具体的代码实现:

<template><div><input type="file" @change="handleFileUpload"></div>
</template><script setup>
import * as XLSX from 'xlsx';const handleFileUpload = (event) => {const file = event.target.files[0];const reader = new FileReader();reader.onload = (e) => {const data = e.target.result;const workbook = XLSX.read(data, { type: 'binary' });const sheetName = workbook.SheetNames[0];const worksheet = workbook.Sheets[sheetName];const json = XLSX.utils.sheet_to_json(worksheet);console.log(json); // 处理或使用数据};reader.readAsBinaryString(file);
};
</script>

结论

通过上述步骤,我们可以在Vue项目中轻松实现Excel文件的导入和导出功能。XLSX库提供了强大的API,使得操作Excel文件变得简单快捷。无论是处理大量数据的导出,还是从Excel文件中导入数据,XLSX库都是一个优秀的选择。希望本文能帮助你在项目中实现Excel文件的高效处理。

如果对你有帮助,点赞👍、收藏💖、关注🔔是我更新的动力!👋🌟🚀

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/888622.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL两阶段提交目的

阶段提交的过程 事务执行阶段&#xff1a;事务开始执行&#xff0c;InnoDB执行SQL语句的具体操作&#xff0c;如数据修改、删除等&#xff0c;并将这些操作记录在内存中。写入Redo Log&#xff08;准备阶段&#xff09;&#xff1a;事务即将提交时&#xff0c;首先将事务相关的…

前端项目使用gitlab-cicd+docker实现自动化部署

GitLab CI/CD 是一个强大的工具&#xff0c;可以实现项目的自动化部署流程&#xff0c;从代码提交到部署只需几个步骤。本文将带你配置 GitLab CI/CD 完成一个前端项目的自动化部署。 前言 为什么使用cicddocker&#xff1f; 目前我们公司开发环境使用的shell脚本部署&#…

easyexcel 导出日期格式化

1.旧版本 在新的版本中formate已经被打上废弃标记。那么不推荐使用这种方式。 2.推荐方式 推荐使用另外一种方式【 Converter 】代码如下&#xff0c;例如需要格式化到毫秒【yyyy-MM-dd HH:mm:ss SSS】级别 创建一个公共Converter import com.alibaba.excel.converters.Conv…

DApp开发前端框架选择:React还是Vue?

在区块链DApp开发中&#xff0c;前端框架的选择对用户体验和开发效率至关重要。React和Vue作为两大主流前端框架&#xff0c;各自拥有广泛的开发者基础和丰富的生态支持。那么在DApp开发中&#xff0c;该如何选择适合自己的框架呢&#xff1f;下面我们来比较一下&#xff0c;看…

6. 一分钟读懂“抽象工厂模式”

6.1 模式介绍 书接上文&#xff0c;工厂方法模式只能搞定单一产品族&#xff0c;遇到需要生产多个产品族时就歇菜了。于是&#xff0c;在需求的“花式鞭策”下&#xff0c;程序员们再次绷紧脑细胞&#xff0c;创造出了更强大的抽象工厂模式&#xff0c;让工厂一次性打包多个产品…

gulp应该怎么用,前端批量自动化替换文件

背景 最近公司准备把所有项目中用到的国际化相关的key规范化&#xff0c;原因是: 一直以来公司的app和web端 在针对相同的需求以及相同的国际化语言&#xff0c;需要设置不同的两份国际化文件&#xff0c;难以维护旧版的国际化文件中&#xff0c;存在的大量值重复&#xff0c…

UML箭线图的理解和实践

在软件开发的世界里&#xff0c;UML&#xff08;统一建模语言&#xff09;作为一种标准化的建模语言&#xff0c;扮演着举足轻重的角色。UML类图更是软件开发设计和架构过程中的核心工具&#xff0c;它不仅能帮助开发者明确系统中的类及其关系&#xff0c;还能为后续的代码实现…

hive 行转列

行转列的常规做法是&#xff0c;group bysum(if())【或count(if())】 建表: CREATE TABLE table2 (year INT,month INT,amount DOUBLE );INSERT INTO table2 (year, month, amount) VALUES(1991, 2, 1.2),(1991, 3, 1.3),(1991, 4, 1.4),(1992, 1, 2.1),(1992, 2, 2.2),(1992…

【NoSQL数据库】Hbase基本操作——数据库表的增删改查

目录 一、Hbase原理 二、HBase数据库操作 三、遇到的问题和解决方法 一、Hbase原理 HBase的数据模型&#xff1a; 行键 时间戳 列族&#xff1a;contents 列族&#xff1a;anchor 列族&#xff1a;mime “com.cnn.www” T9 Achor:cnnsi.com”CNN” T8 Achor:…

【ETCD】ETCD用户密码认证

目录 概述 特殊用户和角色 root用户 root角色 用户操作 角色操作 启用身份验证 使用etcdctl进行身份验证 使用TLS通用名称 概述 etcd 2.1中增加了身份验证功能。etcd v3 API对身份验证功能的API和用户界面进行了轻微修改&#xff0c;以更好地适应新的数据模型。本指南…

王道考研编程题总结

我还在完善中&#xff0c;边复习边完善&#xff08;这个只是根据我自身总结的&#xff09; 一、 线性表 1. 结构体 #define MaxSize 40 typedef struct{ElemType data[MaxSize]&#xff1b;int length; }SqList 2. 编程题 1. 删除最小值 题意 &#xff1a;从顺序表中删除…

Vue3技术开发,使用纯CSS3动手制作一个3D环绕的相册展示效果,支持传入任意图片.3D轮播相册的组件

主要讲述封装一个3D轮播相册的组件&#xff0c;效果图如下&#xff0c;仅仅传入一个图片的数组即可&#xff0c;效果如下&#xff1a; 使用Vue3技术开发&#xff0c;支持传入任意张数的图片。 使用方法 <template><Swiper :list"list" /> </templat…

本地运行打包好的dist

首先输入打包命令 每个人设置不一样 一般人 是npm run build如果不知道可以去package.json里去看。 打包好文件如下 命令行输入 :npm i -g http-server 进入到dist目录下输入 命令cmd 输入 http-server 成功

通过华为鲲鹏认证的软件产品如何助力信创产业

软件通过华为鲲鹏认证与信创产业有着密切的联系。鲲鹏认证是华为推动信创产业发展的一项重要举措&#xff0c;通过该认证&#xff0c;软件可以在华为的生态系统中实现更好的兼容性和性能优化&#xff0c;从而推动信创产业的全面发展和国产化替代。 鲲鹏认证的定义和重要性 鲲…

RabbitMQ介绍及安装

文章目录 一. MQ二. RabbitMQ三. RabbitMQ作用四. MQ产品对比五. 安装RabbitMQ1. 安装erlang2. 安装rabbitMQ3. 安装RabbitMQ管理界⾯4. 启动服务5. 访问界面6. 添加管理员用户7. 重新登录 一. MQ MQ( Message queue ), 从字⾯意思上看, 本质是个队列, FIFO 先⼊先出&#xff…

Vue生成类似于打卡页面

数据表格 <el-table :data"tableData" border height"calc(100vh - 240px)" :cell-style"cellFun"><el-table-column label"姓名" show-overflow-tooltip prop"name" align"center"/><el-table-co…

vscode上传本地文件到服务器

vscode上传本地文件到服务器 首先下载插件SFTP&#xff0c;我们通过ftp进行文件传输 VScode打开要传输的文件 使用快捷键 ctrlshiftP 打开搜索窗口&#xff0c;搜索SFTP 点击之后vscode文件夹下会生成对应json文件 我们编辑json信息根据远程的服务器情况填写&#xff0c;比如…

趣味数学 2.3.7 | 完全免费,无注册登录,简约纯净

趣味数学是一款完全免费的数学学习软件&#xff0c;支持安卓系统。它无需登录注册&#xff0c;界面简约纯净&#xff0c;分类详细&#xff0c;涵盖趣味数学、数学初练、应用计算、数字推理、图形推理、数字2048、题目练习和数学知识等多个分类。每个分类包含丰富的题目和关卡&a…

JavaScript 快速上手

目录 一. JavaScript 基本概念 二. JavaScript 基本语法 1. 三种引入方式 (1) 行内样式 (2) 内部样式 (3) 外部样式 2. 基础语法 (1) 变量 (2) 数据类型 (3) 运算符 3. JS 对象 (1) 数组 <1> 创建数组 <2> 数组操作 (2) 函数 <1> 普通函数 &…

php基础:文件处理2

1.文件属性 当我们在程序中操作文件时&#xff0c;可能会使用到文件的一些常见属性&#xff0c;比如文件的大小、类型、修改时间、访问时间以及权限等等。PHP 中提供了非常全面的用来获取这些属性的内置函数&#xff0c;如下表所示。 2.目录操作 新建目录&#xff1a;mkdir(路…