部署缩小的javascript文件并进行调试

时间:2015-04-11 02:01:08

标签: javascript angularjs gulp minify gulp-uglify

所以我完成了构建一个新的角度应用程序,我想将它部署到生产中...当然我已准备好所有我的角度代码,以便它可以缩小,所以我被覆盖在那里!但是我不明白的东西......我的应用程序有很好的代码分离和完整的单元测试...因此,当然,我的主页上有很多脚本标签。

我当然需要在运行时调试我的javascript,因为我开发,但是当我去部署时我需要缩小。这里的最佳做法是什么?在将代码移动到生产机器之后,这实际上是用all.min.js文件替换脚本标签的手动过程吗?我是否也缩小了所有的CSS和HTML?我正在使用gulp进行缩小......

感谢您的帮助......

2 个答案:

答案 0 :(得分:1)

如果没有服务器端模板(如Razor或Thymeleaf),我建议使用gulp-preprocess,gulp-processhtml或gulp-html-replace。

答案 1 :(得分:1)

使用gulp在开发和生产中连接文件。您可能希望使用gulp-sourcemaps来调试客户端javascript,就好像它们是单独的文件一样。

这是一个示例gulpfile.js

gulp.task('script', function(){
  gulp.src('./app/**/*.js')
  .pipe(sourcemaps.init())
  .pipe(concat('application.js'))
  .pipe(sourcemaps.write())
  .pipe(gulp.dest('./build'))
})

gulp.task('script:prod', function(){
  gulp.src('./app/**/*.js')
  .pipe(concat('application.js'))
  .pipe(ugilfy())
  .pipe(gulp.dest('./build'))
})

然后在您的视图中,只需将其指向构建文件。

<script src="/build/application.js"></script>

部署时,请运行gulp script:prod。在开发中,运行gulp script