javascript – 如何从Fetch API获得进展?
作者:互联网
参见英文答案 > Upload progress indicators for fetch? 8个
我正在使用$.ajax,我可以这样做:
var xhr = new window.XMLHttpRequest();
//Upload progress
xhr.upload.addEventListener("progress", function(evt){
if (evt.lengthComputable) {
var percentComplete = evt.loaded / evt.total;
//Do something with upload progress
console.log(percentComplete);
}
}, false);
但是,当我使用fetch api时,我该怎么办?
var fData = new FormData();
fData.append("userfile",document.getElementById("file").files[0]);
fetch("/", {method:"POST",body:fData}).then(function(res){});
解决方法:
截至目前,你不能.它还不是规范的一部分.在规格的回购中有一个issue,但它已关闭.关于它,这个issue也有一些讨论.
简而言之,你可能最好只是坚持使用xhr,除非你想在第二期Iinked中尝试一些polyfill / workarounds.
它只是不受支持,这也是获取请求不会显示在devtools的网络选项卡中的原因,直到它们已经完成.
标签:fetch-api,javascript,progress 来源: https://codeday.me/bug/20190829/1757776.html