2017-06-29 130 views
0

我试图在两部分上拆分一个包。例如,将一个包与其所有依赖关系移动到独立的包文件中。Browserify外部不起作用

从主束排除包我宣布它为外部

browserify({ 
    entries: ['./src/index.js'], 
    extensions: ['.js'], 
    debug: true 
}) 
.external(['PdfKit']) // Specify all vendors as external source 
.bundle() 
.pipe(source('app.js')) 
.pipe(buffer()) 
.pipe(sourcemaps.init({loadMaps: true})) 
.pipe(sourcemaps.write('./maps')) 
.pipe(gulp.dest('dist/')); 

的问题是,app.js contans PdfKit包的完整的代码具有所有依赖性。

全部工作演示awailable这里:https://github.com/motz-art/browserify-external-test

我怎样才能删除一些(但不是全部)封装,所有它的依赖从app.js?

回答

0

external方法是有案例性的。并且必须匹配包名称,因为它出现在require内。

在我的情况'PdfKit'被标记为外部,但index.js引用'pdfKit'使过滤器返回true,但比其打包自我解决,因为Windows是区分insensetive。