【发布时间】:2017-01-01 13:07:52
【问题描述】:
在处理我的网络应用程序时,特别是文件上传,Chrome 在我发出警报后显示警告:
不推荐在微任务执行期间调用“alert()”,并将在 2016 年 9 月左右的 M53 中删除。有关详细信息,请参阅 https://www.chromestatus.com/features/5647113010544640。
但是我认为在我的情况下调用是合理的,并且有点担心一旦 M53 发布我的代码将无法工作。请注意,我不会将警报发送到生产环境,但对于测试它是非常有价值的。
情况:
我正在使用 react 在 typescript 中开发我的应用程序。我正在使用axios 来执行http 请求。基本上 http-post 看起来像这样:
axios.post("/upload/", data)
.then((response: any) => {
callback(undefined);
})
.catch((error: any) => {
callback(error);
});
然后在调用方法中,如果有错误,我会弹出一个警报,这样我就可以确定测试人员/开发人员会收到通知。有点像这样:
this.service.uploadFile((error: any) => {
if (error) {
console.log(error);
alert("An error occured");
return;
}
this.onUploadCompleted()
});
这是 chrome 显示警告的时候。
首先我想知道警告是否合理,因为警报会在请求完成并返回错误之前显示。所以我很确定它不会阻止任何东西。
如果是合理的,我可以做些什么来显示警报?
【问题讨论】:
-
console.log()还不够吗?
标签: javascript ajax google-chrome axios