是否可以使用* ngIf在任何条件下重新渲染组件?我认为我可以进行超时,大约200ms,然后将组件值赋值为null,更新组件值并重新发送。 但是可以在没有超时的情况下重新渲染并更改组件的值吗?
示例:
@Component({})
export class RepComponent implements OnInit {
component: any;
constructor() {}
ngOnInit() {
this.component = this.route.snapshot.data['component'];
}
}
<div *ngIf="component.type === 'Text'">
<!-- ... -->
</div>
<div *ngIf="component.type === 'Image'">
<!-- ... -->
</div>
因此,由于示例,我需要如果component.type
是“图像”,则组件本身会使用新数据进行重新渲染。
答案 0 :(得分:0)
* ngIf已经在做你想要的了。当条件未满足时,它会从DOM中销毁组件的html部分。
也许你应该在ngOnInit的html中使用相同的变量?
ngOnInit() {
this.component = this.route.snapshot.data[this.component.type];
}
&#13;
希望这有帮助