Markdown导出为 Excel文件 Vue3

news2024/11/16 19:55:58

直接复制到单文件内即可使用

需要用到的插件

  • xlsx @0.17.5
  • marked  @14.0.0
  • file-saver @2.0.5
  • vue @3.4.29

直接SFC单文件内使用

<script setup>
import {reactive} from 'vue';
import xlsx from 'xlsx';
import {marked} from 'marked';
import {saveAs} from 'file-saver';

const markdownTable = reactive({
  "code": 0,
  "message": "ok",
  "data": [
    "| 镜号 | 景别   | 场景   | 拍摄技巧       | 画面                                 | 台词               | 画面备选 | 道具   | 备注 |\n| ---- | ------ | ------ | -------------- | ------------------------------------ | ------------------ | -------- | ------ | ---- |\n| 1    | 大远景 | 山峰   | 无人机俯拍     | 无人机从高空俯拍山峰,云雾缭绕     | 大型古装仙侠爱情   |          |        |      |\n| 2    | 中景   | 山峰   | 镜头跟随       | 演员从山峰小路走下,表情凝重       |                    |          | 吊威亚 |      |\n| 3    | 近景   | 大海   | 镜头推进       | 女演员站在海边,风吹动衣裙         |                    |          |        |      |\n| 4    | 全景   | 树林   | 镜头环绕       | 男演员在树林中舞剑,树叶飘落       |                    |          |        |      |\n| 5    | 特写   | 树林   | 镜头聚焦       | 剑尖上的露珠                         |                    |          |        |      |\n| 6    | 中景   | 山峰   | 镜头快速切换   | 男女演员在山峰上相遇,眼神交流     |                    |          |        |      |\n| 7    | 大远景 | 大海   | 镜头拉远       | 大海波涛汹涌,远处有船只           |                    |          |        |      |\n| 8    | 近景   | 树林   | 镜头推进       | 女演员手抚树干,表情忧伤           |                    |          |        |      |\n| 9    | 全景   | 山峰   | 镜头环绕       | 山峰上男女演员并肩站立,背景壮丽   |                    |          |        |      |\n| 10   | 特写   | 大海   | 镜头聚焦       | 海浪拍打岩石,水花四溅             |                    |          |        |      |\n| 11   | 中景   | 树林   | 镜头跟随       | 男演员在树林中追逐,表情紧张       |                    |          |        |      |\n| 12   | 大远景 | 山峰   | 镜头拉远       | 山峰上男女演员相拥,背景云雾缭绕   |                    |          |        |      |\n| 13   | 近景   | 大海   | 镜头推进       | 女演员站在海边,眼神望向远方       |                    |          |        |      |\n| 14   | 全景   | 树林   | 镜头环绕       | 树林中男女演员相遇,背景树叶飘落   |                    |          |        |      |\n| 15   | 特写   | 山峰   | 镜头聚焦       | 山峰上男女演员手牵手,表情坚定     |                    |          |        |      |\n| 16   | 中景   | 大海   | 镜头跟随       | 大海中男女演员划船,表情平静       |                    |          |        |      |\n| 17   | 大远景 | 树林   | 镜头拉远       | 树林中男女演员并肩行走,背景宁静   |                    |          |        |      |\n| 18   | 近景   | 山峰   | 镜头推进       | 山峰上男女演员相视而笑,表情幸福   |                    |          |        |      |\n| 19   | 全景   | 大海   | 镜头环绕       | 大海中男女演员拥抱,背景波涛汹涌   |                    |          |        |      |\n| 20   | 特写   | 树林   | 镜头聚焦       | 树林中男女演员手牵手,表情坚定     |                    |          |        |      |", "\"| 镜号 | 景别   | 场景   | 拍摄技巧       | 画面                                 | 台词               | 画面备选 | 道具   | 备注 |\n| ---- | ------ | ------ | -------------- | ------------------------------------ | ------------------ | -------- | ------ | ---- |\n| 1    | 大远景 | 山峰   | 无人机俯拍     | 无人机从高空俯拍山峰,云雾缭绕     | 大型古装仙侠爱情   |          |        |      |\n| 2    | 中景   | 山峰   | 镜头跟随       | 演员从山峰小路走下,表情凝重       |                    |          | 吊威亚 |      |\n| 3    | 近景   | 大海   | 镜头推进       | 女演员站在海边,风吹动衣裙         |                    |          |        |      |\n| 4    | 全景   | 树林   | 镜头环绕       | 男演员在树林中舞剑,树叶飘落       |                    |          |        |      |\n| 5    | 特写   | 树林   | 镜头聚焦       | 剑尖上的露珠                         |                    |          |        |      |\n| 6    | 中景   | 山峰   | 镜头快速切换   | 男女演员在山峰上相遇,眼神交流     |                    |          |        |      |\n| 7    | 大远景 | 大海   | 镜头拉远       | 大海波涛汹涌,远处有船只           |                    |          |        |      |\n| 8    | 近景   | 树林   | 镜头推进       | 女演员手抚树干,表情忧伤           |                    |          |        |      |\n| 9    | 全景   | 山峰   | 镜头环绕       | 山峰上男女演员并肩站立,背景壮丽   |                    |          |        |      |\n| 10   | 特写   | 大海   | 镜头聚焦       | 海浪拍打岩石,水花四溅             |                    |          |        |      |\n| 11   | 中景   | 树林   | 镜头跟随       | 男演员在树林中追逐,表情紧张       |                    |          |        |      |\n| 12   | 大远景 | 山峰   | 镜头拉远       | 山峰上男女演员相拥,背景云雾缭绕   |                    |          |        |      |\n| 13   | 近景   | 大海   | 镜头推进       | 女演员站在海边,眼神望向远方       |                    |          |        |      |\n| 14   | 全景   | 树林   | 镜头环绕       | 树林中男女演员相遇,背景树叶飘落   |                    |          |        |      |\n| 15   | 特写   | 山峰   | 镜头聚焦       | 山峰上男女演员手牵手,表情坚定     |                    |          |        |      |\n| 16   | 中景   | 大海   | 镜头跟随       | 大海中男女演员划船,表情平静       |                    |          |        |      |\n| 17   | 大远景 | 树林   | 镜头拉远       | 树林中男女演员并肩行走,背景宁静   |                    |          |        |      |\n| 18   | 近景   | 山峰   | 镜头推进       | 山峰上男女演员相视而笑,表情幸福   |                    |          |        |      |\n| 19   | 全景   | 大海   | 镜头环绕       | 大海中男女演员拥抱,背景波涛汹涌   |                    |          |        |      |\n| 20   | 特写   | 树林   | 镜头聚焦       | 树林中男女演员手牵手,表情坚定     |                    |          |        |      |", "\"| 镜号 | 景别   | 场景   | 拍摄技巧       | 画面                                 | 台词               | 画面备选 | 道具   | 备注 |\n| ---- | ------ | ------ | -------------- | ------------------------------------ | ------------------ | -------- | ------ | ---- |\n| 1    | 大远景 | 山峰   | 无人机俯拍     | 无人机从高空俯拍山峰,云雾缭绕     | 大型古装仙侠爱情   |          |        |      |\n| 2    | 中景   | 山峰   | 镜头跟随       | 演员从山峰小路走下,表情凝重       |                    |          | 吊威亚 |      |\n| 3    | 近景   | 大海   | 镜头推进       | 女演员站在海边,风吹动衣裙         |                    |          |        |      |\n| 4    | 全景   | 树林   | 镜头环绕       | 男演员在树林中舞剑,树叶飘落       |                    |          |        |      |\n| 5    | 特写   | 树林   | 镜头聚焦       | 剑尖上的露珠                         |                    |          |        |      |\n| 6    | 中景   | 山峰   | 镜头快速切换   | 男女演员在山峰上相遇,眼神交流     |                    |          |        |      |\n| 7    | 大远景 | 大海   | 镜头拉远       | 大海波涛汹涌,远处有船只           |                    |          |        |      |\n| 8    | 近景   | 树林   | 镜头推进       | 女演员手抚树干,表情忧伤           |                    |          |        |      |\n| 9    | 全景   | 山峰   | 镜头环绕       | 山峰上男女演员并肩站立,背景壮丽   |                    |          |        |      |\n| 10   | 特写   | 大海   | 镜头聚焦       | 海浪拍打岩石,水花四溅             |                    |          |        |      |\n| 11   | 中景   | 树林   | 镜头跟随       | 男演员在树林中追逐,表情紧张       |                    |          |        |      |\n| 12   | 大远景 | 山峰   | 镜头拉远       | 山峰上男女演员相拥,背景云雾缭绕   |                    |          |        |      |\n| 13   | 近景   | 大海   | 镜头推进       | 女演员站在海边,眼神望向远方       |                    |          |        |      |\n| 14   | 全景   | 树林   | 镜头环绕       | 树林中男女演员相遇,背景树叶飘落   |                    |          |        |      |\n| 15   | 特写   | 山峰   | 镜头聚焦       | 山峰上男女演员手牵手,表情坚定     |                    |          |        |      |\n| 16   | 中景   | 大海   | 镜头跟随       | 大海中男女演员划船,表情平静       |                    |          |        |      |\n| 17   | 大远景 | 树林   | 镜头拉远       | 树林中男女演员并肩行走,背景宁静   |                    |          |        |      |\n| 18   | 近景   | 山峰   | 镜头推进       | 山峰上男女演员相视而笑,表情幸福   |                    |          |        |      |\n| 19   | 全景   | 大海   | 镜头环绕       | 大海中男女演员拥抱,背景波涛汹涌   |                    |          |        |      |\n| 20   | 特写   | 树林   | 镜头聚焦       | 树林中男女演员手牵手,表情坚定     |                    |          |        |      |,"
  ]
})

const exportTable = () => {
  // 将Markdown转换为HTML
  const html = marked(markdownTable.data[0]);
  // 创建DOM元素来存放转换后的HTML
  const container = document.createElement('div');
  container.innerHTML = html;
  // 提取表格元素
  const table = container.querySelector('table');
  // 将表格转换为工作表
  const ws = xlsx.utils.table_to_sheet(table);
  // 创建工作簿并添加工作表
  const wb = xlsx.utils.book_new();
  xlsx.utils.book_append_sheet(wb, ws, 'Sheet1');
  // 生成Excel文件并导出
  const wbout = xlsx.write(wb, {bookType: 'xlsx', type: 'binary'});
  saveAs(new Blob([s2ab(wbout)], {type: 'application/octet-stream'}), 'table.xlsx');
}

// 将字符串转换为ArrayBuffer
const s2ab = (s) => {
  const buf = new ArrayBuffer(s.length);
  const view = new Uint8Array(buf);
  for (let i = 0; i !== s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF;
  return buf;
}
</script>

<template>
  <div class="markdown">
    markdown
    <textarea v-model="markdownTable.data" rows="15" cols="15"></textarea>
    <button @click="exportTable">导出Excel</button>
  </div>
</template>

效果图

  • 页面效果图
  • 导出后的excel效果图

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

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

相关文章

鸿蒙(API 12 Beta3版)【元数据(C/C++)】媒体相机开发指导

元数据&#xff08;Metadata&#xff09;是对相机返回的图像信息数据的描述和上下文&#xff0c;针对图像信息&#xff0c;提供的更详细的数据&#xff0c;如照片或视频中&#xff0c;识别人像的取景框坐标等信息。 Metadata主要是通过一个TAG&#xff08;Key&#xff09;&…

Linux基础知识学习(三)

3. Vim 编辑器 1> 定义 im 通过一些插件可以实现和IDE一样的功能&#xff01; vi 是老式的字处理器。 Vim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富&#xff0c;在程序员中被广泛使用。 键盘图为&#xff1a; ps &#xff1…

JMeter——设置全局变量和非全局变量

在用JMeter写接口case&#xff0c;遇到一种情况&#xff0c;接口1查看列表接口&#xff0c;接口2查看详情接口&#xff0c;接口2需要传入接口1列表的第一条数据的id。 如果这个id后续改变较多&#xff0c;可以使用非全局变量的设置方法&#xff1b; 如果这个id在整个case都比较…

vs2019使用setup打包exe学习记录

仅记录一下自己的学习过程&#xff0c;如果有问题&#xff0c;请多指正&#xff01; 开头注意&#xff1a;在打包之前一定要确保自己的工程是正常运行的&#xff0c;以及相关环境变量的配置是正确的&#xff0c;我后面就因为QT的环境变量问题报错。 我使用vs2019的QT项目写了…

本庄村果园预售系统的设计与实现bootpf

TOC springboot441本庄村果园预售系统的设计与实现bootpf 第1章 绪论 1.1 课题背景 二十一世纪互联网的出现&#xff0c;改变了几千年以来人们的生活&#xff0c;不仅仅是生活物资的丰富&#xff0c;还有精神层次的丰富。在互联网诞生之前&#xff0c;地域位置往往是人们思…

代码随想录算法训练营 | 动态规划 part06

322. 零钱兑换 给你一个整数数组 coins &#xff0c;表示不同面额的硬币&#xff1b;以及一个整数 amount &#xff0c;表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额&#xff0c;返回 -1 。 你可以认为每种硬币的数量是…

【人工智能】Python融合机器学习、深度学习和微服务的创新之路

1. &#x1f680; 引言1.1 &#x1f680; 人工智能的现状与发展趋势1.2 &#x1f4dc; 机器学习、深度学习和神经网络的基本概念1.3 &#x1f3c6; 微服务架构在人工智能中的作用 2. &#x1f50d; 机器学习的演变与创新2.1 &#x1f31f; 机器学习的历史回顾2.2 &#x1f9e0;…

3个常用zip压缩包文件打来密码删除方法

ZIP压缩包作为一种广泛使用的文件压缩格式&#xff0c;常常用于节省存储空间或便于文件传输。一般情况下为保护文件数据的安全我们会给zip压缩文件设置密码安全保护&#xff0c;但如果后续不需要密码保护了&#xff0c;如何删除密码呢&#xff1f;下面小编给大家介绍三种常用的…

ubuntu22.04安装QQ

QQ官方网址&#xff1a;QQ-轻松做自己 选择【Linux】 接下来根据架构的版本&#xff0c;选择相应的安装包。 可使用 uname -a 指令来查看架构的版本&#xff0c;如下指令所示&#xff0c; wjjwjj-MS-7D31:~/桌面$ uname -a Linux wjj-MS-7D31 6.5.0-45-generic #45~22.04.1-U…

项目申报管理系统pf

TOC springboot375项目申报管理系统pf 第一章 课题背景及研究内容 1.1 课题背景 信息数据从传统到当代&#xff0c;是一直在变革当中&#xff0c;突如其来的互联网让传统的信息管理看到了革命性的曙光&#xff0c;因为传统信息管理从时效性&#xff0c;还是安全性&#xff…

[C++游戏开发] 超大地图多人在线扫雷

[C游戏开发] 超大地图多人在线扫雷 前言游戏截图注册方法游戏功能介绍操作方法介绍游戏特性介绍1.颜色标识2.生存方法 使用的技术核心代码尾声***如果你不介意的话&#xff0c;你应该点个赞&#xff0c;然后收藏&#xff0c;然后关注对不对。*** 前言 唉&#xff0c;写文章要什…

【秋招笔试题】合并最小值 DP

题面 解法&#xff1a;与leetcode321不一样的是&#xff0c;那个是最大值&#xff0c;这个是最小值&#xff0c;且需要处理0首位问题。那道题是Hard题中的Hard&#xff0c;无论是思维量还是代码量都是顶级&#xff0c;这道题难度并不弱于那道。 观察到数据量为500级别&#x…

DVWA-IDS 特殊版本测试

起因 浏览DVWA历史更新记录发现有版本带有IDS插件&#xff0c;可以用于平时没有相关设备等场景演示用&#xff0c;所以开启本次测试。 下载 官方最新版本是移除了IDS插件&#xff0c;原因是“从不使用”&#xff0c;所以需要下载移除该插件之前的版本。 https://github.com/…

【vue教程】六. Vue 的状态管理

目录 往期列表本章涵盖知识点回顾Vuex 的基本概念什么是 Vuex&#xff1f;为什么需要 Vuex&#xff1f; Vuex 的核心概念stategettersmutationsactionsmodules Vuex 的安装和基本使用安装 Vuex创建 store在 Vue 应用中使用 store在组件中访问和修改状态 Vuex 的模块化模块化的好…

PWN练习---Stack_2

目录 srop源码分析exp putsorsys源码分析exp ret2csu_1源码分析exp traveler源码分析exp srop 题源&#xff1a;[NewStarCTF 2023 公开赛道]srop 考点&#xff1a;SROP 栈迁移 源码 首先从bss段利用 syscall 调用 write 读出数据信息&#xff0c;然后调用 syscall-read向栈中…

回归预测|基于鲸鱼优化支持向量机结合Adaboost集成的数据回归预测Matlab程序 多特征输入单输出 效果非常不错!WOA-SVM-Adaboost

回归预测|基于鲸鱼优化支持向量机结合Adaboost集成的数据回归预测Matlab程序 多特征输入单输出 效果非常不错&#xff01;WOA-SVM-Adaboost 文章目录 前言回归预测|基于鲸鱼优化支持向量机结合Adaboost集成的数据回归预测Matlab程序 多特征输入单输出 效果非常不错&#xff01;…

Wallpaper-将动态壁纸永久设置为静态

可以在设置里找到横排性能选项点击之后里面有个回放&#xff0c;回放中有个应用程序规则点击设置-创建新规则&#xff0c;当explorer.exe(好像是微软的文件浏览&#xff1f;)条件为运行中&#xff0c;回放选择暂停即可 然后确定即可。

轻松上手:10款热门产品管理系统推荐

文章介绍了以下几个工具&#xff1a;PingCode、Worktile、Teambition、明道云、用友云、Tapd、禅道、Figma、Amplitude、Asana 。 在寻找合适的产品管理系统时&#xff0c;你是否感到市场上的选择令人眼花缭乱&#xff0c;不知从何选择&#xff1f;一个好的产品管理系统可以极大…

推荐4款让文字创作更轻松的AI 写作助手 !

目前很多的AI 技术已经渗透到了我们生活的各个领域&#xff0c;包括写作。ai写作工具的出现&#xff0c;为那些有写作困难或者需求的人们提供了很大的帮助&#xff0c;成为了我们的一大得力助手。今天&#xff0c;就给大家推荐几款比较热门的AI写作工具。 1、笔灵AI写作助手 直…

Java面向接口编程(例题+知识点)

题目&#xff1a; 采用面向接口编程思想组装一台计算机 计算机的主要组成部分 CPU 硬盘 内存 代码解析&#xff1a; 1.参数类型为 CPU 是因为它是一个接口。接口类型参数的主要好处是它使方法具有更好的灵活性和可扩展性。你可以传入任何实现了 CPU 接口的类的实例。 2.使用…