素材巴巴 > 程序开发 >

nodejs element-ui上传图片方法

程序开发 2023-09-02 22:11:03

首先要明确要做什么:需要在表单选中本地图片后,在表单中显示图片,并且将图片保存至服务器端以便数据库保存和调用图片路径。

问题的后半部份比较简单:只要在服务器端有这张图片,那么将它显示出来也就是通过请求对应的路径。具体来说如下图:
在这里插入图片描述

这里用的是nodejs,根据请求的参数返回assets文件夹中保存的图片

相对来说前半部分问题比较麻烦,也就是将表单选中的本地图片保存至服务器端,查了不少资料折腾了一上午终于综合了一个解决方案:

[(img-vx1fnh3J-1643864434725)(C:Users35378AppDataRoamingTyporatypora-user-imagesimage-20220203123916980.png)]

这里用的是element-ui的图片上传,用before-upload方法来获取上传的文件的同时直接将文件post给后端,应该还有更正规的做法。

这里新建了一个FormData,将上传的图片作为file添加到formData中,调用api中的post请求将FormData作为payload

再来后端处理post请求:后端需要做的是将post请求中的图片保存至服务器端,需要用到的有


在这里插入图片描述

并且配置好中间件multer的保存位置和保存文件名,由于这里用的是自己的笔记本就保存在同一个文件夹下。

最后在处理post请求中加上参数upload.single(‘file’)就会调用中间件保存载荷图片,这里的file如果不这么写会报错MulterError: Unexpected field

这样一来服务端就保存到上传的图片了,之后具体的细节就不赘述了。


标签:

素材巴巴 Copyright © 2013-2021 http://www.sucaibaba.com/. Some Rights Reserved. 备案号:备案中。