1
我有一個帶有iframe元素的組件。我將src屬性設置爲原始URL,用戶可以從那裏導航。我想訂閱用戶導航到的新位置,假設它們位於同一個域中。在非角度解決方案中,他們描述了在iframe上放置onload事件,但是在角度上在iframe上放置(加載)事件似乎僅在初始化時觸發一次,而不是每當iframe中存在導航事件時都如我所願。我做了一個非常醜陋,哈克解決方案:如何在角度應用程序中訂閱iframe位置更改?
Observable
.interval(200)
.map(x => this.iframe.nativeElement.contentWindow.location.pathname)
.distinctUntilChanged()
.subscribe(url => {
console.log(url);
});
但這似乎不理想,至少可以說。有沒有更好的解決方案,不涉及投票?