qiniu/js-sdk

vue-cli-service 4.4.4build production 之后 utils.js中 var xhr=createXHR() 没有upload对象

Closed this issue · 8 comments

如题。
run dev本地开发模式是正常的。

打包部署生产环境后,utils.js中的xhr对象 就不正常了。

开发框架 vue-element-admin ,
github地址:https://github.com/PanJiaChen/vue-element-admin
你们可以试试。
任何版本的qiniu-js都存在此问题

@danamy 请把具体报错贴出来
考虑是否是你所用的框架在处理 xhr 的时候的缺陷?
qiniu-js 在 vue 和 react 都已经有很多开发者使用的

你们的用不了,我就自己写了一个xmlhttprequest ,生产环境没这个问题
http://picpub.baixuezhihui.com/4eadfcf2c9a44687b37b8a92dd6e732f.jpg

@winddies 我提的这个 是个问题吗,还是跟我用的wabpack打包配置有问题。但是运行dev没问题啊。

vue-cli-service production下确实有这个问题 我也遇到了。目前没有什么好办法。

@danamy
问题有解决吗?
这个项目是否依旧有这个问题:https://github.com/PanJiaChen/vue-element-admin

我希望有一个复现的例子可以帮我去查看这个问题

坑,已找到问题所在,是vue-template-admin的mock模块重写了XMLHttpRequest
解决办法应该就是注释掉main.js里这几行

// src/main.js
if (process.env.NODE_ENV === 'production') {
  const { mockXHR } = require('../mock')
  mockXHR()
}

// mock/index.js

// for front mock
// please use it cautiously, it will redefine XMLHttpRequest,
// which will cause many of your third-party libraries to be invalidated(like progress event).
function mockXHR() {
....
}

@lifeforfun 非常感谢,确实是该问题导致的。我将会向相关相关仓库提交 issue,以向他们汇报该问题。