ANGULAR 7重新加载组件视图

时间:2019-04-02 19:43:22

标签: angular

我想通过单击按钮图标来重新加载组件视图,而不刷新整个页面。

我的查看代码:

<nb-card>
  <nb-card-header>
    <div class="row" style="font-size: 2.125rem !important;">
      <div class="col-sm-8">
        Tableau des Casiers 
      </div>
      <div class="col-sm-4 d-flex justify-content-end">
        <nb-action icon="ion-refresh sizeicone" (click)="refresh()"></nb-action>
      </div>
    </div>
  </nb-card-header>

  <nb-card-body>
    <ng2-smart-table [settings]="settings" (custom)="onCustom($event)" [source]="source"
      (deleteConfirm)="onDeleteConfirm($event)" (editConfirm)="onSaveConfirm($event)"
      (createConfirm)="onCreateConfirm($event)">
    </ng2-smart-table>
  </nb-card-body>
</nb-card>

1 个答案:

答案 0 :(得分:2)

在angular中,您不需要刷新组件-angular会在检测到模板更改使用的变量时自动刷新页面内容。因此,在refresch()方法中,只需更新变量值即可。但是,如果您真的想手动执行此操作,则可以使用以下构造:

模板:

<my-component *ngIf="showComponent"></my-component>

ts文件:

public refresh() {
   this.showComponent=false;
   setTimeout(x=>this.showComponent=true);
}