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();
            },
posted @   沧海一声笑rush  阅读(1721)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示