我需要将browserify-shim用于我的一些browserify依赖项,但我无法编辑我的package.json。我在gulp中使用browserify。可以从API中独家指定所有package.json部分吗?我想象的是这样的事情:
return gulp.src('glob/path/to/my/main/js/file.js')
.pipe(browserify({
debug: false,
transform: ['browserify-shim'],
shim: {
'jquery': {
exports: 'jQuery'
}
}
}));
然后,我的输出带有var $ = require('jquery');
和var $ = jQuery;
,因为我们现在正在使用jQuery作为全局。这可能吗? Whne
答案 0 :(得分:2)
在这种情况下,您可以使用exposify转换。 browserify-shim是一个based on it,由同一个人写。
E.g:
return browserify('glob/path/to/my/main/js/file.js', { debug: false })
.transform('exposify', { expose: {'jquery': 'jQuery' }})
答案 1 :(得分:1)
<强> gulpfile.js 强>
gulp = require('gulp')
browserify = require('gulp-browserify')
gulp.task('browserify', function(){
var src = 'test.js'
gulp.src(src)
.pipe(browserify({
shim: {
jQuery: {
path: './bowser_components/jquery/dist/jquery.min.js',
exports: '$'
}
}
}))
.pipe(gulp.dest('./build/js'))
})
<强> test.js 强>
$ = require('jQuery')
console.log($);