Grunt的条件js缩小

Conditional js minification with Grunt

本文关键字:缩小 js 条件 Grunt      更新时间:2023-09-26

我有一个单页的angular应用程序,在构建之前对其代码进行了缩小和合并。它可以很好地与grunt一起使用min任务并在index.html 中构建块

<!-- build:js js/components.min.js -->
<script src="components/jquery/dist/jquery.js"></script>
<!-- other bower components -->
<!-- endbuild -->
<!-- build:js js/app.min.js -->
<script src="js/app.js"></script>
<!-- other application specific js files -->
<!-- endbuild -->

它在最后创建了两个文件:app.min.js和components.min.js.

但现在我需要参数化grunt任务,以基于参数生成app.min.js。(我需要一个构建,其中所有内容都将被缩小以用于生产,另一个构建——没有缩小的应用程序代码——用于"业务"目的)。

如何配置useminPrepare有时接受所有块,有时不接受?

由于我没有得到任何有效的答案,这里是我的解决方案:

  1. 为"业务"构建创建单独的grunt任务
  2. regex用useminPrepare替换处理index.hmtl之前不需要的所有usemin构建注释
  3. 进行所有处理
  4. 从备份中恢复index.html