vue项目使用elementui上传组件 打包后报错t.upload.addEventListener is not a function的解决方案
element
A Vue.js 2.0 UI Toolkit for Web
项目地址:https://gitcode.com/gh_mirrors/eleme/element
·
错误问题
Vue:xhr.upload.addEventListener is not a function
这个问题是因为mockjs改动了axios里面XMLHttpRequest对象致使的
根据axios源码 l是一个XMLHttpRequest对象
mockJs把l变量从XMLHttpRequest对象改为了MockXMLHttpRequest对象
因此l.upload是一个空对象 空对象没有 addEventListener方法 因此报错
解决方案:
方法1:
在工程node_modules/mockjs/dist/mock.js文件里,在mockjs判断的条件的地方 (搜寻)->/若是未找到匹配的数据模板,则 采用原生 XHR 发送请求。/ 通常是8308行位置,添加代码
MockXMLHttpRequest.prototype.upload = xhr.upload;
给MockXMLHttpRequest对象添加一个原生xhr.upload方法。

方法2:
在工程node_modules/mockjs/src/xhr/xhr.jsprototype 通常是第216行添加代码
MockXMLHttpRequest.prototype.upload = xhr.upload;
这个方法要重新编译才能够生效对象
A Vue.js 2.0 UI Toolkit for Web
最近提交(Master分支:4 个月前 )
c345bb45
1 年前
a07f3a59
* Update transition.md
* Update table.md
* Update transition.md
* Update table.md
* Update transition.md
* Update table.md
* Update table.md
* Update transition.md
* Update popover.md 1 年前
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)