我想把所有的Javascript在一个单一的scripts.js
文件。这是我的index.html
的一部分:
<!-- build:inlinejs js/scripts.js -->
<script src="bower_components/jquery/dist/jquery.min.js"></script>
<script src="bower_components/moment/min/moment.min.js"></script>
<script src="bower_components/moment/locale/de.js"></script>
<script src="bower_components/bootstrap/dist/js/bootstrap.min.js"></script>
<script src="bower_components/eonasdan-bootstrap-datetimepicker/build/js/bootstrap-datetimepicker.min.js"></script>
<script src="js/main.js"></script>
<!-- endbuild -->
我当前的Gulp配置如下:
gulp.task('usemin', function () {
return gulp.src('./*.html')
.pipe(usemin({
css: [minifyCss(), 'concat'],
html: [minifyHtml({empty: true})],
js: [uglify(), rev()],
inlinejs: [uglify()],
inlinecss: [minifyCss(), 'concat'],
inline: ['concat']
}))
.pipe(gulp.dest('dist/'));
});
正如您所看到的,已经有很多缩小的Javascript文件,所以我不希望我的构建浪费宝贵的时间来丑化已经缩小的文件。我怎样才能只丑化未缩小的文件?
我知道这个问题已经问了一段时间了,但我有同样的问题,并找到了解决方案。
在你的html中,你可以给构建块命名:
<!-- build:jsLibs js/libs.js -->
<script src="bower_components/jquery/dist/jquery.min.js"></script>
<!-- endbuild -->
<!-- build:jsApp js/app.js -->
<script src="js/main.js"></script>
<!-- endbuild -->
在gulp任务中:
gulp.task('usemin', function () {
return gulp.src('./*.html')
.pipe(usemin({
...
jsLibs: ['concat'],
jsApp: [uglify, rev]
}))
.pipe(gulp.dest('dist/'));
});
希望对别人有所帮助。