【发布时间】:2018-06-13 17:20:28
【问题描述】:
有没有人知道如何在 Angular 4 环境中上传图像,然后将此数据作为快速服务器发送到后端,并使用 mongoose 存储到 mongodb 中?如果有人知道,请发布答案。谢谢
文件输入
{{imgfile.errors | json}}
<div class="alert alert-danger"
*ngIf="size >= 300000">
<strong>
Can't upload this image. check image size!!!
</strong>
</div>
脚本
onFileChange(event) {
let reader = new FileReader();
if(event.target.files && event.target.files.length > 0) {
console.log(event.target.files)
let file = event.target.files[0];enter code here
this.size = file.size;
console.log(file.size);
if (file.size <= 300000) {
this.picSize = true;
}
reader.onload = () => {
this.new_food.image = reader.result;
};
reader.readAsDataURL(file);
}
}
【问题讨论】:
-
我会打破这个并尝试一次解决一个问题,因为这是一个很大的问题...我有一份工作有人为我做;)
-
thanks 实际上找到了一种将图像存储到 mongodb 中的方法,但数据似乎是混合字符的冲击。最终,可以将其检索回显示。好想看看有没有更好的办法
-
最好能展示你到目前为止所做的工作。我猜你正在对图像进行base64编码并将其存储在数据库中。在大多数情况下,我认为将资产上传到某个地方然后保存一个链接通常就足够了(通过 id 保存文件并保存扩展名以在发送回客户端时恢复原始扩展名)。 stackoverflow.com/help/how-to-ask 最终,如果将文件本身的数据存储在数据库中是一个好主意,这取决于用例或项目,但在大多数中/大型事物中,我见过人们使用 S3 或类似的文件来存储文件。
-
通常您不想查询图像数据本身,因此将实际数据放入数据库并没有什么意义。此外,我是某种角度的“专家”,但不是猫鼬等方面的专家。但没有代码可看,更具体的问题,任何人都很难回答这个问题。
-
我已经发布了 angularjs 代码请看他们
标签: mongodb angular express mongoose