我在 typescript 中创建了一个 angular js 服务来发布文件,当它成功时我只是用来alert()
通知用户。
uploadFileToUrl = (file, uploadUrl) => {
var fd = new FormData();
fd.append('file', file);
this.$http.post(uploadUrl, fd, {
transformRequest: angular.identity,
headers: { 'Content-Type': undefined }
})
.success(() => {
alert("file uploaded");
})
.error(() => {
alert("some error occured.");
});
}
我可以调试代码并验证调用确实成功,但是当调用返回时,它显示成功,然后出现一个摘要错误,但如果我只是从服务返回一个承诺并在控制器使用then()
中,它工作正常。
uploadFileToUrl = (file, uploadUrl) => {
var fd = new FormData();
fd.append('file', file);
return this.$http.post(uploadUrl, fd, {
transformRequest: angular.identity,
headers: { 'Content-Type': undefined }
})
}
我想知道有什么问题success()
以及是否then()
应该始终优先于success()
.