我正在Polymer 2中编程,并且有一个包含ajax请求的html。对于这些请求,我有一个错误运行的函数,以触发一个对话框以显示收到的错误消息。我的问题是,事件似乎仅在状态返回404时才触发。如果服务器返回状态500并返回一条消息,则错误功能将运行,但是该事件不会触发。
这是当ajax请求出错时运行的功能:
testError(e) {
console.log(e.detail.request.xhr.response.message);
this.dispatchEvent(new CustomEvent('error', {bubbles: true}));
}
这些是其他html文件中处理侦听器的功能:
constructor() {
super();
this.error = this._boundListener.bind(this);
}
connectedCallback() {
super.connectedCallback();
window.addEventListener('error', this._boundListener);
console.log("connectedCallback ran");
}
disconnectedCallback() {
super.disconnectedCallback();
window.removeEventListener('error', this._boundListener);
console.log("disconnectedCallback ran");
}
_boundListener(e) {
console.log("boundlistener ran");
}
有什么想法可能会发生这种情况吗? TIA