Чтобы воспроизвести проблему в Stackblitz , нажмите GO
, чтобы перейти к компоненту, содержащему iframe
, он работает сейчас, затем вернитесь назад и вперед, iframe
исчезнет. Вы должны обновить страницу, чтобы снова показать iframe
.
Я попробовал обходной путь:
- Я пытался освободить объект в
ngOnDestroy
window['onYouTubeIframeAPIReady'] = null;
, но безуспешно
Это код как создать iframe
init() {
var tag = document.createElement('script');
tag.src = 'https://www.youtube.com/iframe_api';
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
}
ngOnInit() {
this.init();
window['onYouTubeIframeAPIReady'] = (e) => {
this.YT = window['YT'];
this.player = new window['YT'].Player('player', {
videoId: '1cH2cerUpMQ'
});
};
}
ОБРАЗЕЦ
<div id="player" >
</div>
У кого-то есть обходной путь с успехом, поделитесь, пожалуйста.