$ browserify -r through -r duplexer -r ./my-file.js:my-module > bundle.js
然后在你的页面中可以这样做:<script src="bundle.js"></script>
<script>
var through = require('through');
var duplexer = require('duplexer');
var myModule = require('my-module');
/* ... */
</script>
这段代码适用于命令行,但我想在gulpfile中使用Browserify。但是,在示例中似乎没有添加模块名称的方法,例如
./myfile-js:my-module
。如果有选项,我还没找到。唯一的方法就是按照他们描述的方式使用require(3)
来要求我的模块,因为Browserify似乎会给模块分配数字,但这些数字会改变,显然这是不可取的。编辑:我的当前解决方案是这样的:
var shell = require('gulp-shell');
gulp.task('browserify', shell.task([
'browserify -r ./src/bundle.js:bundle > ./build/bundle.js'
]))
这是一种解决方法,如果我想充分利用Gulp管道,则并不是最佳选择。我想知道是否可以在没有命令行的情况下完成此操作,如果不能,为什么只能通过CLI完成?