gpt4 book ai didi

javascript - 在 Angular 6 中保存之前为每个图像添加标题

转载 作者:太空宇宙 更新时间:2023-11-03 22:17:07 25 4
gpt4 key购买 nike

我正在使用以下代码来显示多张图片的预览,现在我必须为每张图片添加标题,然后我必须保存。

enter image description here

<input class="form-control" id="uploadimg" type="file" name="fileupload1" (change)="detectFiles($event,'gallery')" multiple>

<ng-container *ngFor="let url of urls;let n = index;">
<div class="gallery-close">

<div class="row-field">
<h4>Title</h4>
<input class="field-200" name="gal_title" size="25" />
</div>
<img [src]="url" name="url" class="rounded mb-3" width="100" height="100">
<i class="fa fa-times" aria-hidden="true"></i>
</div>
</ng-container>

在detectFiles中填充URL数组:

export class AppComponent {

urls = new Array<string>();

detectFiles(event) {
this.urls = [];
let files = event.target.files;
if (files) {
for (let file of files) {
let reader = new FileReader();
reader.onload = (e: any) => {
this.urls.push(e.target.result);
}
reader.readAsDataURL(file);
}
}
}
}

最佳答案

创建包含标题文件模型

FileUploadModel.ts

export class FileUploadModel{
file: File;
title: string;
}

在你的组件中使用

export class AppComponent  {
urls = new Array<string>();
list: Array<FileUploadModel>=[];
title:string;

detectFiles(event) {
this.urls = [];
let files = event.target.files;
if (files) {
for (let file of files) {
let reader = new FileReader();
reader.onload = (e: any) => {
this.urls.push(e.target.result);
}
reader.readAsDataURL(file);
//push the file list and title to list of model
this.list.push({ file: file, title: '' });
}
}
}
save(){
console.log(this.list)
}
}

在 html 中添加 ngModel 到标题

 <input [(ngModel)]="list[n].title" class="field-200" name="gal_title" size="25" />

我在我的 github 中创建了上传文件的仓库你可以看看

Here is stackblitz example

关于javascript - 在 Angular 6 中保存之前为每个图像添加标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56145919/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com