上传图片并显示#Vue3#后端接口数据
上传图片并显示#Vue3#后端接口数据
效果:

上传并显示图片
代码:
<!-- 上传图片并显示 -->
<template><!-- 上传图片start --><div><el-form><el-form-item><el-uploadmultipleclass="avatar-uploader"action="":http-request="uploadFile1"list-type="picture":show-file-list="false"><img v-if="imageUrl" class="avatar" :src="imageUrl" /><el-icon v-else class="avatar-uploader-icon"><Plus /></el-icon></el-upload></el-form-item></el-form></div><!-- 上传图片end -->
</template><script setup lang="ts">
import { Plus } from "@element-plus/icons-vue";
import { ref } from "vue";
import axios from "axios";
import { useRouter } from "vue-router";
import { ElNotification } from "element-plus";const router = useRouter();
console.log(router.currentRoute.value.path); //当前路由路径
sessionStorage.setItem("path", router.currentRoute.value.path);// 定义表单
let tableForm = ref({file: "",
});
const imageUrl = ref("");
// 上传并显示图片
const uploadFile1 = async (val: any) => {tableForm.value.file = val.file;console.log("tableForm", tableForm);// 数据交互let formdata = new FormData();formdata.append("File", tableForm.value.file);// 上传文件await axios.post("http://192.168.1.214:5050/api/File/UploadFile", formdata, {headers: { "Content-Type": "multipart/form-data" },}).then((res) => {console.log("res.data", res.data);console.log("res.data.data.id", res.data.data.id);// 找到文件路径axios.post("http://192.168.1.214:5050/api/File/FilePathInfo", {id: res.data.data.id,}).then((result) => {console.log("result.data.data.filePath", result.data.data.filePath);let path = "http://192.168.1.214:5050" + result.data.data.filePath;console.log("path", path);imageUrl.value = path;});if (res.data.status === 200) {ElNotification({title: "上传成功",message: "上传成功",duration: 2000,type: "success",});}});
};
</script><style scoped lang="scss">
// 上传图片
.avatar-uploader .avatar {width: 200px;height: 200px;display: block;
}
.avatar-uploader {width: 200px;height: 200px;border: 1px dashed var(--el-border-color);border-radius: 6px;cursor: pointer;position: relative;overflow: hidden;transition: var(--el-transition-duration-fast);
}
.avatar-uploader:hover {border-color: var(--el-color-primary);
}
.el-icon {font-size: 20px;color: #8c939d;width: 200px;height: 200px;text-align: center;
}
</style>相关文章:
上传图片并显示#Vue3#后端接口数据
上传图片并显示#Vue3#后端接口数据 效果: 上传并显示图片 代码: <!-- 上传图片并显示 --> <template><!-- 上传图片start --><div><el-form><el-form-item><el-uploadmultipleclass"avatar-uploader&quo…...
音视频开发14 FFmpeg 视频 相关格式分析 -- H264 NALU格式分析
H264简介-也叫做 AVC H.264,在MPEG的标准⾥是MPEG-4的⼀个组成部分–MPEG-4 Part 10,⼜叫Advanced Video Codec,因此常常称为MPEG-4 AVC或直接叫AVC。 原始数据YUV,RGB为什么要压缩-知道就行 在⾳视频传输过程中,视频⽂件的传输…...
Qt学习记录(15)数据库
目录 前言: 数据库连接 项目文件加上sql 打印查看Qt支持哪些数据库驱动 QMYSQL [static] QSqlDatabase QSqlDatabase::addDatabase(const QString &type, const QString &connectionName QLatin1String(defaultConnection)) 数据库插入 头文件.h 源…...
c++常用设计模式
1、单例模式(Singleton):保证一个类只有一个实例,提供一个全局访问点; class Singleton { private:static Singleton* instance;Singleton() {}public:static Singleton* getInstance() {if (instance nullptr) {instance new Singleton()…...
【动手学深度学习】softmax回归从零开始实现的研究详情
目录 🌊1. 研究目的 🌊2. 研究准备 🌊3. 研究内容 🌍3.1 softmax回归的从零开始实现 🌍3.2 基础练习 🌊4. 研究体会 🌊1. 研究目的 理解softmax回归的原理和基本实现方式;学习…...
MySQL:MySQL执行一条SQL查询语句的执行过程
当多个客户端同时连接到MySQL,用SQL语句去增删改查数据,针对查询场景,MySQL要保证尽可能快地返回客户端结果。 了解了这些需求场景,我们可能会对MySQL进行如下设计: 其中,连接器管理客户端的连接,负责管理连接、认证鉴权等;查询缓存则是为了加速查询,命中则直接返回结…...
解决Python导入第三方模块报错“TypeError: the first argument must be callable”
注意以下内容只对导包时遇到同样的报错会有参考价值。 问题描述 当你尝试导入第三方模块时,可能会遇到如下报错信息: TypeError: the first argument must be callable 猜测原因 经过仔细检查代码,我猜测这个错误的原因是由于变量名冲突所…...
在python中连接了数据库后想要在python中通过图形化界面显示数据库的查询结果,请问怎么实现比较好? /ttk库的treeview的使用
在Python中,你可以使用图形用户界面(GUI)库来显示数据库的查询结果。常见的GUI库包括Tkinter(Python自带)、PyQt、wxPython等。以下是一个使用Tkinter库来显示数据库查询结果的简单示例。 首先,你需要确保…...
OZON的选品工具,OZON选品工具推荐
在电商领域,选品一直是决定卖家成功与否的关键因素之一。随着OZON平台的崛起,越来越多的卖家开始关注并寻求有效的选品工具,以帮助他们在这个竞争激烈的市场中脱颖而出。本文将详细介绍OZON的选品工具,并推荐几款实用的辅助工具&a…...
营销方案撰写秘籍:包含内容全解析,让你的方案脱颖而出
做了十几年品牌,策划出身,混迹过几个知名广告公司,个人经验供楼主参考。 只要掌握以下这些营销策划案的要点,你就能制作出既全面又专业的策划案,让你的工作成果不仅得到同事的认可,更能赢得老板的赏识&…...
如何制作一本温馨的电子相册呢?
随着科技的不断发展,电子相册已经成为了一种流行的方式来记录和分享我们的生活。一张张照片,一段段视频,都能让我们回忆起那些温馨的时光。那么,如何制作一本温馨的电子相册呢? 首先,选择一款合适的电子相册…...
485通讯网关
在工业自动化与智能化的浪潮中,数据的传输与交互显得尤为重要。作为这一领域的核心设备,485通讯网关凭借其卓越的性能和广泛的应用场景,成为了连接不同设备、不同协议之间数据转换和传输的桥梁。在众多485通讯网关中,HiWoo Box以其…...
Anaconda中的常用科学计算工具
Anaconda中的常用科学计算工具 Anaconda是一个流行的Python科学计算环境,它提供了大量的科学计算工具,这些工具可以帮助用户进行数据分析、机器学习、深度学习等任务。以下是一些常见的Anaconda中的科学计算工具: NumPy:一个用于…...
Java 中BigDecimal传到前端后精度丢失问题
1.用postman访问接口,返回的小数点精度正常 2.返回到页面里的,小数点丢失 3.解决办法,在字段上加注解 JsonFormat(shape JsonFormat.Shape.STRING) 或者 JsonSerialize(using ToStringSerializer.class) import com.fasterxml.jackson.a…...
在Linux/Ubuntu/Debian上安装TensorFlow 2.14.0
在Ubuntu上安装TensorFlow 2.14.0,可以遵循以下步骤。请注意,由于TensorFlow的版本更新可能很快,这里提供的具体步骤可能需要根据你的系统环境和实际情况进行微调。 准备工作 检查系统要求:确保你的Ubuntu系统满足TensorFlow的运…...
多语言for循环遍历总结
多语言for循环遍历总结 工作中经常需要遍历对象,但不同编程语言之间存在一些细微差别。为了便于比较和参考,这里对一些常用的遍历方法进行了总结。 JAVA 数组遍历 Test void ArrayForTest() {String[] array {"刘备","关羽", &…...
python API自动化(Jsonpath断言、接口关联及加密处理)
JsonPath应用及断言 重要 自动化要解决的核心问题 :进行自动测试-自动校验(进行结果的校验 主要能够通过这个方式提取数据业务场景:断言 、接口关联 {key:value}网址:附:在线解析 JSONPath解析器 - 一个工具箱 - 好用…...
C++入门5——C/C++动态内存管理(new与delete)
目录 1. 一图搞懂C/C的内存分布 2. 存在动态内存分配的原因 3. C语言中的动态内存管理方式 4. C内存管理方式 4.1 new/delete操作内置类型 4.2 new/delete操作自定义类型 1. 一图搞懂C/C的内存分布 说明: 1. 栈区(stack):在…...
leetcode 743.网络延时时间
思路:迪杰斯特拉最短路径 总结起来其实就两件事: 1.从所给起点开始能不能到达所有点; 2.如果能够到达所有点,那么这个时候需要判断每一个点到源点的最短距离,然后从这些点中求出最大值。 所以用最小路径求解是最划…...
MATLAB导入导出Excel的方法|读与写Excel的命令|附例程的github下载链接
前言 前段时间遇到一个需求:导出变量到Excel里面,这里给出一些命令,同时给一个示例供大家参考。 MATLAB读/写Excel的命令 在MATLAB中,可以使用以下命令来读写Excel文件: 读取Excel文件: xlsread(filen…...
X-TRACK开源GPS自行车码表深度解析:从嵌入式架构到离线地图的完全实战指南
X-TRACK开源GPS自行车码表深度解析:从嵌入式架构到离线地图的完全实战指南 【免费下载链接】X-TRACK A GPS bicycle speedometer that supports offline maps and track recording 项目地址: https://gitcode.com/gh_mirrors/xt/X-TRACK X-TRACK是一款基于A…...
在多模型间切换使用时对响应速度与一致性的感受
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 在多模型间切换使用时对响应速度与一致性的感受 作为一名需要频繁调用大模型API的开发者,我的日常工作离不开与各类模型…...
手把手教你用STM32CubeMX和HAL库搞定PAJ7620U2手势传感器(附完整初始化代码)
STM32CubeMX与HAL库实战:PAJ7620U2手势传感器全流程开发指南 当你第一次拿到PAJ7620U2手势传感器模块时,可能会被它强大的功能所吸引——它能识别9种手势动作,包括上下左右滑动、前后推拉、顺时针/逆时针旋转以及挥手动作。但随之而来的问题是…...
硬件性能突破:免费AMD处理器调试工具SMUDebugTool终极指南
硬件性能突破:免费AMD处理器调试工具SMUDebugTool终极指南 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: https:…...
Super IO插件终极指南:Blender批量导入导出效率提升300%的完整实战方案
Super IO插件终极指南:Blender批量导入导出效率提升300%的完整实战方案 【免费下载链接】super_io blender addon for copy paste import / export 项目地址: https://gitcode.com/gh_mirrors/su/super_io 在3D创作工作流中,文件导入导出是每个设…...
内存计算技术如何优化基因组分析性能与能效
1. 内存计算技术如何重塑基因组分析格局在生物信息学领域,我们正面临着一个关键矛盾:一方面,随着测序技术的进步,基因组数据正以每年翻倍的速度增长;另一方面,传统计算架构的能效瓶颈日益凸显。我曾参与过一…...
Keil MDK双J-Link并行调试实战指南
1. 双J-Link调试器并行使用场景解析在嵌入式开发过程中,我们经常会遇到需要同时调试多个目标板的情况。传统做法是频繁插拔调试器或使用调试器切换器,但这会显著降低开发效率。通过Keil MDK配合双J-Link调试器并行工作,可以完美解决这个痛点。…...
AssetStudio Unity资源提取终极指南:精准解析SerializedFile与AssetBundle
1. 为什么AssetStudio是Unity资源提取的“第一把刀”——不是因为它最强,而是因为它最准你有没有遇到过这样的场景:刚下载一个热门Unity手游的APK,兴致勃勃地解包,结果在assets/bin/Data/Managed/目录下看到一堆Assembly-CSharp.d…...
HeyGen免费额度怎么用最值?我用1个积分做了个多语言口播视频(附保姆级教程)
HeyGen免费额度高效使用指南:1积分打造多语言口播视频 第一次接触HeyGen时,我被它逼真的口型同步技术震撼了——直到发现免费账户只有1个积分。这就像得到一颗钻石却只能刮一次玻璃。经过两周的反复测试,我总结出一套**"1积分最大化&quo…...
工业边缘计算实战:基于Wind River Helix与App Cloud的云原生应用部署与管理
1. 项目概述:当工业边缘计算遇上云原生应用最近在跟几个做工业物联网和智能网关项目的朋友聊天,发现一个挺有意思的现象:大家手里的硬件平台越来越强,但软件开发和部署的效率却成了新的瓶颈。一个典型的场景是,你有一台…...
