qiniu / js-sdk

Qiniu Cloud JavaScript SDK
1.38k stars 519 forks source link

提供的npm包不支持webpack等模块化引用 #156

Closed xieyu33333 closed 3 years ago

xieyu33333 commented 8 years ago

提供的npm包不支持webpack等模块化引用, 既然提供了npm包,为什么不把相应的依赖也require进去,真是理解不能,就是加个umd头而已,有那么难么?

baoziv587 commented 8 years ago

针对这个问题我提了PR。等他们合完就可以了

ryanwang520 commented 8 years ago

没那么简单的, plupload ,mOxie 这两货还是global的依赖 , 感觉还是用es6重构一波,然后webpack直接打包umd比较靠谱, 暂时还是cdn搞定吧。

baoziv587 commented 8 years ago

plupload ,mOxie npm仓库有可用版本。 要是急着用,自己fork一个qiniu JSSDK改改依赖没有特别麻烦。 我 已经在生产环境用了3个多月了,暂时没发现有什么问题。 image

ryanwang520 commented 8 years ago

好吧,看了一下cd-plupload这货的index.js

window.mOxie = require('./moxie').mOxie;
window.plupload = plupload;

怪不得直接require就行

Sloaix commented 8 years ago

为什么要依赖plupload,mOxie这种不支持模块化的反人类的库?!!七牛官方的SDK水准太差了,还不如自己配合Fine Uploader重写,每次引入这个QiniuSDK都是一肚子火。

jingzhou123 commented 7 years ago

webpack可以考虑用expose-loader把plupload暴露到全局,require(expose?plupload!plupload!plupload/js/plupload.dev)

peaceful321 commented 7 years ago

js-sdk 依赖的第三方的 Plupload 插件和 Plupload 依赖的 flash 文件,都不支持模块化引用

cag2050 commented 7 years ago

可以使用CommonJS模块化,例子:https://github.com/cag2050/qiniu_demo npm install之后引用:require('qiniu-js/dist/qiniu.js'),该文件中代码: var Qiniu = new QiniuJsSDK(); global.Qiniu = Qiniu; global.QiniuJsSDK = QiniuJsSDK; (定义在 global 上面的变量,不需要在模块中通过 exports 输出,其他模块中也能使用)

forrest-mao commented 4 years ago

问题相关 #61 ,我们来补充下相关文档,仅七牛内部员工可见:https://jira.qiniu.io/browse/TS-951

yinxulai commented 3 years ago

推荐升级使用最新版本,该 issue 关闭。