Angular2 中的动态 div 加载
Dynamic div load in Angular2
我在我的 Angular 应用程序中使用 PrimeNG,其中有一个场景可以上传多个文件。我知道通过 multiple="true" 我可以在 PrimeNG 的 p-fileupload 中实现同样的效果。但我想做的是,每当我使用 下面的代码 上传一个文件时,我想在它下面添加另一个相同的片段/ div 并为我做同样的事情。这也应该进行多次。我怎样才能做到这一点?我想在 Angular 2.
中执行此操作
<div class="row">
<div class="col-md-12">
<p-growl [value]="msgs" life="10000"></p-growl>
<p-fileUpload name="attachments" accept="pdf/*" auto="true"
(onSelect)="onSelectAttachments($event)"
(onUpload)="onUploadAttachments($event)"
(onClear)="clearAttachments()" url="{{attachmentUploadURL}}"
multiple="false" (onBeforeSend)="sendFile($event)"
chooseLabel="Click to Browse">
<template pTemplate>
<ul *ngIf="uploadedAttachments.length">
<li *ngFor="let file of uploadedAttachments">{{file.name}} -
{{file.size}} bytes
</li>
</ul>
</template>
</p-fileUpload>
</div>
如您所见,我希望在从以下 div 上传一个文件时再次添加上述 div。这应该进行任意次。
希望我理解正确。您可以使用 ngFor 显示多个 div。这是一个简单的例子:
@Component({
selector: 'my-app',
template: `
<div>
<button (click)="finishRequest()">Finish Request</button>
<div *ngFor="let request of requests">
my div content for request {{request.id}}
</div>
</div>
`,
})
export class App {
id = 0;
constructor() {
this.requests = [{request:this.id++}];
}
finishRequest() {
this.requests.push({request:this.id++});
}
}
我在我的 Angular 应用程序中使用 PrimeNG,其中有一个场景可以上传多个文件。我知道通过 multiple="true" 我可以在 PrimeNG 的 p-fileupload 中实现同样的效果。但我想做的是,每当我使用 下面的代码 上传一个文件时,我想在它下面添加另一个相同的片段/ div 并为我做同样的事情。这也应该进行多次。我怎样才能做到这一点?我想在 Angular 2.
中执行此操作<div class="row">
<div class="col-md-12">
<p-growl [value]="msgs" life="10000"></p-growl>
<p-fileUpload name="attachments" accept="pdf/*" auto="true"
(onSelect)="onSelectAttachments($event)"
(onUpload)="onUploadAttachments($event)"
(onClear)="clearAttachments()" url="{{attachmentUploadURL}}"
multiple="false" (onBeforeSend)="sendFile($event)"
chooseLabel="Click to Browse">
<template pTemplate>
<ul *ngIf="uploadedAttachments.length">
<li *ngFor="let file of uploadedAttachments">{{file.name}} -
{{file.size}} bytes
</li>
</ul>
</template>
</p-fileUpload>
</div>
如您所见,我希望在从以下 div 上传一个文件时再次添加上述 div。这应该进行任意次。
希望我理解正确。您可以使用 ngFor 显示多个 div。这是一个简单的例子:
@Component({
selector: 'my-app',
template: `
<div>
<button (click)="finishRequest()">Finish Request</button>
<div *ngFor="let request of requests">
my div content for request {{request.id}}
</div>
</div>
`,
})
export class App {
id = 0;
constructor() {
this.requests = [{request:this.id++}];
}
finishRequest() {
this.requests.push({request:this.id++});
}
}