Angular Google Maps(AGM)核心加载问题

时间:2018-12-06 01:02:43

标签: angular

仅在第二次初始化组件时加载mapsAPILoader。

this.mapsAPILoader.load().then(() => { console.log('loaded') });

因此,如果我在app.component中加载一次,然后在form组件中再次加载,它将起作用。

为什么第一次不加载。

1 个答案:

答案 0 :(得分:0)

我找到了解决方法,但我不知道这是最好的还是理想的方法

ngAfterContentChecked(): void {
    //Called after every check of the component's or directive's content.
    //Add 'implements AfterContentChecked' to the class.
    if (!this.isApiLoaded) {
        this._loader.load().then(() => {
            this.isApiLoaded = true;
            console.log('loaded')
        });
    }
}

您可以阅读AfterContentChecked的注释,它会不断检查所有页面,但是通过这种方式,您可以检查API是否已加载,并设置一个变量以确保加载器不会被多次调用。