【问题标题】:Gulp + Browserify bundling dependencyGulp + Browserify 捆绑依赖
【发布时间】:2016-03-28 06:44:53
【问题描述】:
在libs/index.jsx
使用 require 调用了所有库
前任。 require('jquery')...
它会生成一个包含 jquery 的包
在app/index.jsx
我在 app.js 上调用了同样的东西,但整个 jquery 代码仍在添加
到 app.js 上的包
谁能帮助我如何将我的app.js 依赖于输出文件上的libs.js?这是我的代码:
'使用严格';
var gulp = require('gulp');
var notify = require('gulp-notify');
var rename = require('gulp-rename');
var browserify = require('browserify');
var babelify = require('babelify');
var watchify = require('watchify');
var source = require('vinyl-source-stream');
var es = require('事件流');
gulp.task('default', function() {
// 我们定义我们想要捆绑的输入文件:
var 文件 = [
'构建/js/app/index.jsx',
'构建/js/libs/index.jsx'
];
变种输出文件 = [
'app.js',
'libs.js'
];
// 将它们映射到我们的流函数
var tasks = files.map(function(entry, index) {
// 浏览器化实例
var bundler = browserify({
条目:[条目]
});
// Watchify 观察源文件的变化
bundler.plugin(监视,{
//忽略这个文件夹
忽略手表:[
'**/node_modules/**',
'**/bower_components/**'
]
});
// Babel 转换,将 .jsx 文件转换为原生 js
bundler.transform(babelify,{
预设:['es2015', 'react']
});
// 打包文件
捆绑器.bundle()
.pipe(源(输出文件[索引]))
// 将它们重命名为“bundle as postfix”
.pipe(重命名({
扩展名:'.bundle.js'
}))
.pipe(gulp.dest('dist/js'))
.pipe(通知({
消息:'生成的文件:',
}));
返回捆绑器;
});
});
在 dist/js 文件夹中创建的输出文件是 libs.bundle.js 和 app.bundle.js。我想要两个独立的文件,一个依赖于另一个,即 app.bundle.js。有人可以帮帮我吗?
【问题讨论】:
标签:
gulp
bundle
browserify