Я пытаюсь загрузить Google API внутри приложения angular6. После того, как событие загрузки было запущено, я не могу ничего изменить в своем компоненте.
Посмотрите комментарии к последним 3 строкам скрипта
@Component({
selector: 'my-app',
template: '{{loaded}}',
})
export class AppComponent {
loaded = false;
constructor(){
let node = document.createElement('script');
node.src = 'https://apis.google.com/js/client.js?onload=__onGoogleLoaded';
node.type = 'text/javascript';
document.getElementsByTagName('head')[0].appendChild(node);
window['__onGoogleLoaded'] = (ev) =>{
console.log('here!!!!');// <----------------------------WORKING
this.loaded = true;// <---------------------------------NOT WORKING
}
//this.loaded = true; <<----------------------------------WORKING
}
}
https://stackblitz.com/edit/angular-qvwm3z?file=src%2Fapp%2Fapp.component.ts