我试着把捆绑包分成两部分。例如,将一个包含所有依赖项的包移动到单独的包文件中。
要从主包中排除包,我将其声明为外部包:
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包含了PdfKit包的全部代码和所有依赖项。
完整的工作演示可在此处查看:https://github.com/motz-art/browserify-external-test
如何从app.js中删除一些(但不是全部)软件包及其所有依赖项?
发布于 2017-06-30 22:24:02
external方法区分大小写。并且必须与出现在require中的包名相匹配。
在我的例子中,'PdfKit'被标记为external,但是index.js引用了'pdfKit',所以filter返回true,但是由于windows不区分大小写,所以它自己会被解析。
https://stackoverflow.com/questions/44826573
复制相似问题