javascript - 仅使用谷歌浏览器时出现类型错误

标签 javascript ajax angularjs file-upload

两天以来,当我使用此脚本在 AJAX ft. angularJS 中上传文件时出现错误 https://github.com/danialfarid/angular-file-upload 。 但就在我选择要上传的文件后,出现了 TypeError:

类型错误:无法在“FormData”上执行“追加”:未找到与提供的签名匹配的函数。 在类型错误( native )

at upload (http://localhost:8888/angular-file-upload.min.js:2:1609)
at h.$scope.onFileSelect (http://localhost/UploadCtrl.js:31:29)
at http://localhost/angular.min.js:166:92
at http://localhost/angular-file-upload.min.js:2:1991
at http://localhost/angular.min.js:115:185
at e (http://localhost:8888/angular.min.js:33:421)
at http://localhost:8888/angular.min.js:37:77

如果我使用其他浏览器,如 Firefox、Safari、Opera,甚至 IE,都可以正常工作..

感谢您的帮助。

最佳答案

Angular 期望上传的文件实现 Blob 接口(interface)。

https://developer.mozilla.org/en-US/docs/Web/API/Blob

我在 Jasmine 测试中遇到了这个错误,并通过创建一个像这样的新 Blob 解决了它。

var 文件 = new Blob();

关于javascript - 仅使用谷歌浏览器时出现类型错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23828908/

相关文章:

javascript - BrowserSync 未加载

php - 如何使用php脚本删除目录中的文件

javascript - 在 HTML 中显示 Jquery Ajax 响应时出现问题

angularjs - Bootstrap 警报消息表示为模态、 Angular

javascript - 对未定义结果执行的方法(来自 promise 解析的方法)

node.js - 警告 : Task "karma" not found when running grunt test

javascript - 与 jquery 最兼容且易于使用的 jquery 颜色选择器是什么?

javascript - 对象,参数,jquery

javascript - 如何将变量传递给闭包

jquery - 为什么在获取 304 状态码时,jquery ajax 不调用从缓存中填充数据变量?