o.upload.addEventListener is not a function

o.upload.addEventListener is not a function

在本地的开发环境是可以正常上传的,但是到测试环境,上传就报了这么一个错

在网上寻找的方法

一、

在 node_modules/mockjs/dist/mock.js 第8308行 和 node_modules/mockjs/src/xhr/xhr.js 第216行

添加代码:

javascript 复制代码
 MockXMLHttpRequest.prototype.upload = xhr.upload;

这样是可以解决,不过这不是根本方法,我们的项目上测试和线上是自动打包上传的,所以不会把这两句代码打包进去,所以用了第二种方法

二、原因是vue-cli中的mockjs模块把XMLHttpRequest覆盖拦截了,会导致对象属性访问不到

所以把mokejs卸载删除就好了,

删除mokejs:

1、npm uninstall mockjs 删除该模块依赖

2、vue.config.js

注释这段代码

3、src/main.js

注释这段代码

相关推荐
云浪20 分钟前
Go 并发实战:从零实现一个高并发安全的任务调度器
javascript·后端·go
Flynt1 小时前
axios 被投毒半年后,我把 npm 的"安全防线"实测了一遍:最信任的 SHA512 是安慰剂
前端·npm·node.js
excel2 小时前
Base62 和 Base64 有什么区别?
前端
风骏时光牛马3 小时前
大模型底层架构与AI源码深度剖析
前端
掘金挖土4 小时前
前端手摸手跑路之 AI 应用开发(九)
前端·后端
中文呀7 小时前
三维 GIS 离线缓存实战:逆向 CesiumOfflineCache,并亲手为它补上"自动更新"能力
前端
前进前进前进7 小时前
TRAE 全链路实战:做了一个警示牌一键生成器:纯 Canvas、单文件、零依赖
前端
小万7428 小时前
God‘s Eye View 深度解析:15 路公开信号 + CesiumJS 的浏览器级 OSINT 控制台,60 帧渲染的“真实间谍卫星模拟器”
前端
IT星宿8 小时前
浏览器标签页全是一个图标:我用名字哈希生成 favicon,让每个项目都有身份标识
前端