我创建了2个任务,'compileApp'和'compileAppDeploy'。基本上,它们类似于 compileAppDeploy 缩小要部署的代码。
独立地,两个任务都运行良好,但如果 compileAppDeploy 先运行,那么 compileApp 从 dist 文件夹
继承缩小代码不成功我尝试了几种路径组合。虽然如果我设置在路径下面,那么 javaScriptMinified.js 将被删除,但 htmlAngularMinified.js 将被合并。
'!./app/dist/*.js
目录结构
+root
+app
+dist -> Exclude
-javaScriptMinified.js -> after run compileAppDeploy task
-htmlAngularMinified.js -> after run compileAppDeploy task
+filters -> Include
+l10n -> Exclude
+components -> Include
-app.js -> Include
+css
-gulpfile.js
-index.html
-package.json
compileApp
gulp.task('compileApp', function() {
return gulp.src(['./app/app.js','./app/**/*.js','!./app/dist/'])
.pipe(plumber({errorHandler : onError}))
.pipe(concat('LoginPortal.min.js'))
.pipe(gulp.dest('./app/' ));
});
compileAppDeploy
gulp.task('compileAppDeploy', function( version ) {
return gulp.src(['./app/app.js','./app/**/*.js','!./app/dist/'])
.pipe(plumber({errorHandler : onError}))
.pipe(stripDebug())
.pipe(uglify({
warnings : false
}))
.pipe(replace('app/l10n' ,'' + version + '/l10n'))
.pipe(concat('LoginPortal' + version + '.min.js'))
.pipe(gulp.dest('./app/dist/' + version + '/' ));
});
答案 0 :(得分:0)
不成功我尝试了几种路径组合。虽然如果我设置在路径下面,那么 javaScriptMinified.js 将被删除,但 htmlAngularMinified.js 将被合并。
'!./app/dist/*.js
您只能直接在./app/dist/
中排除文件,而不是在子目录中。这可能意味着htmlAngularMinified.js
位于子目录中,而javaScriptMinified.js
则不是。
您需要从所有目录级别排除.js
个文件:!./app/dist/**/*.js
如果您刚刚使用了正确的目录结构,那么您不必担心任何问题。将您的分发目录放在源目录中只是一个糟糕的主意。而不是这种结构:
+root
+app
+dist
使用以下结构:
+root
+app
+dist
然后在compileAppDeploy
中,你可以这样做:
.pipe(gulp.dest('./dist/' + version + '/' ));
并且您不必担心排除dist
目录,因为它不再低于./app
。