【问题标题】:Dynamic div load in Angular2Angular2中的动态div加载
【发布时间】:2017-05-01 13:00:11
【问题描述】:

我在我的 Angular 应用程序中使用 PrimeNG,其中存在上传多个文件的场景。我知道通过 multiple="true" 我可以在 PrimeNG 的 p-fileupload 中实现相同的效果。但我想做的是每当我使用下面的代码上传一个文件时,我希望在它下面添加另一个相同的 sn-p/ 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。这应该执行任意次数。

【问题讨论】:

    标签: angular angular2-template primeng


    【解决方案1】:

    我希望我理解正确。您可以使用 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++});
      }
    }
    

    【讨论】:

    • 知道了。我犯了一个简单的错误,由您的ans解决。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2016-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-25
    • 1970-01-01
    • 1970-01-01
    • 2017-04-08
    相关资源
    最近更新 更多