Vue实现复制excel表格内容粘贴至网页
一.实现效果
二。原理
因为现在的谷歌等浏览器从安全等角度考虑,禁止直接读取剪切板上的东西。所以要手动的实现粘贴的这一步,通过粘贴到text文档上,然后,使用for遍历,根据 \n
把每一行分开,然后再根据\t
把每一列的数据都提取出出来,对应着存入到表格中。
三.具体代码
CopyExcelToTable(demo, data, source, clear) {
if (clear) { // 清空原有元素
data.splice(0, data.length);
}
// 首先对源头进行解析
let rows = source.split("\n"); // 拆成很多行
for (let i = 0; i < rows.length; i++) {
if (rows[i] != "") { // 如果某一行不是空,再按列拆分
let columns = rows[i].split("\t"); // 已经按列划分
let dataone = {}; // 声明一行数组
for (let j = 0; j < columns.length; j++) {
// 读取demo里的第j对应的key值
let keys = Object.keys(demo); // key的名
dataone[keys[j]] = columns[j];
}
data.push(dataone);
};
}
// 关闭显示框,情况text表的数据
this.biao4text.show = false;
this.guanzhujiegou.zhijingshekongduan.biao3text = false;
this.$forceUpdate();
this.biao4text.text = "";
this.$forceUpdate();
},
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?