关于实现微信截图粘贴实现图片上传

入局了vue3+ts的坑

在实现了粘贴获取到文件elementPlus没法调用组件自动上传

一开始考虑使用 image-clipboard这个插件,但是我使用安装不到我就放弃了

arduino 复制代码
npm install image-clipboard --save

上述得找源或者使用

arduino 复制代码
bower install image-clipboard

当然对我来说肯定放弃呀!!!!!!

那就是用window来检测做处理了

ini 复制代码
const handlePaste = (event: ClipboardEvent) => {
	const items = event.clipboardData?.items;
	if (items) {
		for (let i = 0; i < items.length; i++) {
			const item = items[i];
			if (item.type.indexOf('image') !== -1) {
				const blob = item.getAsFile();
				if (blob) {
					// 将粘贴的图片添加到文件列表中
					// fileList.value.push({
					// 	name: 'pasted-image.png', // 文件名
					// 	raw: blob, // 文件对象
					// 	url: URL.createObjectURL(blob), // 图片预览链接
					// });
					// 可以在这里上传图片到服务器
					uploadImg(blob);
				}
			}
		}
	}
};

上述一开始是准备使用自带的组件上传,但是后面发现

通过ref调用submit()没有办法来实现上传,百思不得其解。

然后就先使用了另外的接口来实现图片的上传,但是这个问题一直烦恼着我,然后就去看了源码

然后打印一下我的文件信息

然后再看我的代码

当我默认没有status时候给我默认success了,那么也就导致我没法接下来的上传,但是我功能都实现了,以我的懒惰肯定不会再去改动一下,

php 复制代码
                        fileList.value.push({
						name: 'pasted-image.png', // 文件名
						raw: blob, // 文件对象
						url: URL.createObjectURL(blob), // 图片预览链接
                                                status:'ready'
					          });

这样在使用ref就可以实现submit();

踩坑之路从未停止

相关推荐
白兰地空瓶1 小时前
🏒 前端 AI 应用实战:用 Vue3 + Coze,把宠物一键变成冰球运动员!
前端·vue.js·coze
Liu.7742 小时前
vue3使用vue3-print-nb打印
前端·javascript·vue.js
松涛和鸣3 小时前
Linux Makefile : From Basic Syntax to Multi-File Project Compilation
linux·运维·服务器·前端·windows·哈希算法
dly_blog3 小时前
Vue 逻辑复用的多种方案对比!
前端·javascript·vue.js
万少4 小时前
HarmonyOS6 接入分享,原来也是三分钟的事情
前端·harmonyos
烛阴4 小时前
C# 正则表达式:量词与锚点——从“.*”到精确匹配
前端·正则表达式·c#
wyzqhhhh4 小时前
京东啊啊啊啊啊
开发语言·前端·javascript
JIngJaneIL4 小时前
基于java+ vue助农电商系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
q_19132846954 小时前
基于Springboot+MySQL+RuoYi的会议室预约管理系统
java·vue.js·spring boot·后端·mysql·若依·计算机毕业设计
想学后端的前端工程师4 小时前
【Java集合框架深度解析:从入门到精通-后端技术栈】
前端·javascript·vue.js