ngDocheck和ngOnchanges的特定用例

时间:2019-08-27 08:14:01

标签: angular

ngDocheck和ngOnchanges是否有任何特定的用例。我读了这个blog,我知道该框架将这些事件用于变更检测以及所有其他事件。在使用这些事件的任何特定情况下,请帮助我理解这一点。预先感谢?。

1 个答案:

答案 0 :(得分:0)

比方说,您的组件中有一个重要的输入参数,该参数确定要使用的逻辑。当此参数更改时,您要调用初始化逻辑。

export class Component implements OnChanges {
    ngOnChanges(changes: SimpleChanges): void {
        if (changes.importantParameter) {
            this.initialize();
        }
    }

    constructor(private api: API) {}

    public initialize() {
        this.api.getData(this.importantParameter);
    }

    @Input()
    public importantParameter: string;
}

changes对象还使您可以访问该对象的当前值和先前值。

对于ngDoCheck,此答案提供了很好的解释:https://stackoverflow.com/a/42807309/9628950