Mock icon indicating copy to clipboard operation
Mock copied to clipboard

xhr_1.upload.addEventListener is not a function

Open sjr7 opened this issue 7 years ago • 3 comments

环境: Angular 5 + Primeng + Mockjs 触发场景: 在一个文件上传表单中 , 使用的是 p-fileUpload 组件 ,点击文件上传后,出现

FileUpload.html:8 ERROR TypeError: xhr_1.upload.addEventListener is not a function
    at FileUpload.upload (fileupload.js:186)
    at Object.eval [as handleEvent] (FileUpload.html:8)
    at handleEvent (core.js:13532)
    at callWithDebugContext (core.js:15041)
    at Object.debugHandleEvent [as handleEvent] (core.js:14628)
    at dispatchEvent (core.js:9944)
    at eval (core.js:10569)
    at HTMLButtonElement.eval (platform-browser.js:2628)
    at ZoneDelegate.invokeTask (zone.js:421)
    at Object.onInvokeTask (core.js:4724)

在屏蔽 Mockjs 后文件上传不会报错


Debug 界面

1529377306 1

在界面中可以看到当前的 XMLHttpRequest已经是Mockjs处理过的,xhr_1.upload.addEventListener的值为undefined,导致后续程序报错

查看 xhr_1.upload中的属性,也是未发现该方法

1529377368 1

sjr7 avatar Jun 19 '18 03:06 sjr7

我的问题和你是一样的,你是怎么屏蔽 Mockjs 文件的

git197 avatar Jan 23 '19 09:01 git197

const Mock = require('mockjs2');
Mock.setup({
    timeout: 800 // setter delay time
});
var xhr = new window._XMLHttpRequest();
window.XMLHttpRequest.prototype.upload = xhr.upload;

limengning avatar Jul 12 '20 13:07 limengning

三年又三年👀

ipcjs avatar Jun 01 '22 11:06 ipcjs