是否有角度方式在iframe上设置onerror属性,所以我可以使用角度表达式。我试过用这个:
<iframe onerror="{{vm.error()}}" ng-src="{{vm.url}}"/>
但得到了错误:
不允许使用HTML DOM事件属性的插值
答案 0 :(得分:0)
您无法使用默认事件。但是您可以创建一个指令并分配给iframe
。然后在指令的逻辑中,注册到onerror
事件并编写逻辑
import { Directive, ElementRef, HostListener, Renderer2, AfterViewInit }
from '@angular/core';
@Directive({
selector: '[appFrame]'
})
export class FrameDirective implements AfterViewInit {
constructor(private iframeEl: ElementRef, private renderer: Renderer2) {
}
ngAfterViewInit() {
this.renderer.listen(this.iframeEl.nativeElement, 'error', () => {
console.log('error caught in directive');
});
}
}