我一直在寻找这个,但没有运气。
我试图写一个gulp任务,应该连接我的lib文件夹中的所有js文件,除了一些。
我尝试了以下,使用gulp-ignore,但没有运气:
var gulpIgnore = require('gulp-ignore');
var ignoreIonic = '!./www/lib/ionic/';
gulp.task('unify-libs', function () {
gulp.src(paths.libs)
.pipe(sourcemaps.init())
.pipe(ngAnnotate({
single_quotes: true
}))
.pipe(gulpIgnore.exclude(ignoreIonic))
.pipe(concat('libs.js'))
.pipe(uglify())
.pipe(sourcemaps.write())
.pipe(gulp.dest('./src/js'));
});
我的文件夹结构如下:
www
|--lib
|--ionic
| |--css
| |--fonts
| |--js
| | |--angular
| | |--angular-ui
| | |--ionic.bundle.js
| | |--ionic.bundle.min.js
| | |--ionic.js
| | |--ionic.min.js
| | |--ionic-angular.js
| | |--ionic-angular.min.js
| |--scss
|--test.js
我试图通过gulp任务实现的目标是:
我想连接 lib文件夹中的所有文件,但是在ionic-> js中我只想将 ionic.bundle.min.js 连接到最终的javascript和不是所有文件。
有任何帮助吗?感谢
答案 0 :(得分:1)
我的帮助不是直截了当的,但从长远来看可能会更好。我建议不要重新发明轮子,并利用经过验证的软件包进行移动应用开发。有一个伟大的Yeoman Geneator,它将从头开始提供一个离子启动项目,包括gulp minification等所有额外功能: generator-m-ionic
答案 1 :(得分:0)
最后,我以这种方式解决了:
var paths = {
libs: ['./www/lib/**/*.js', '!./www/lib/ionic/**'],
....
};
gulp.task('unify-libs', function () {
gulp.src(paths.libs)
.pipe(sourcemaps.init())
.pipe(ngAnnotate({single_quotes: true}))
.pipe(concat('libs.js'))
.pipe(uglify())
.pipe(sourcemaps.write())
.pipe(gulp.dest('./src/' + appRelease + '/js'));
});
现在它正在编译lib
文件夹中的所有文件,除了离子文件夹中的任何文件。我只是决定在我的src文件夹中直接复制我需要的唯一文件,它让我的生活更轻松。
希望它有所帮助。