在同一组件上查询参数值更改后,如何加载/刷新ngAfterViewInit?

时间:2019-03-26 06:46:21

标签: angular typescript

我正在加载createComponent(this.queryparams)方法ngAfterViewInit()事件,并在createComponent方法中传递queryparams值。根据查询参数值,我正在动态加载Component。

但是该组件仅在页面加载时才加载一次,而当查询参数值更改时,它就不会加载该组件。

如何在查询参数值更改时刷新/加载ngAfterViewInit()?

2 个答案:

答案 0 :(得分:0)

请尝试以下操作:

ngOnChanges(changes: SimpleChanges) {
       this.createComponent(this.wizardData);
   }

答案 1 :(得分:0)

您可以订阅actvatedRoute参数,并且当参数更改时,只需在使用这些参数的地方重新加载方法即可。让我们看看实际效果:

component.html:

***
constructor(){
 this.activatedRoute.params.subscribe(params => {
        this.id = params.id;
        this.name = params.name;
        this.ngAfterViewInit(); // or some other method where you are using those query parameters
    });
***

希望这对您有帮助!