6

以下是我的 index.html 文件中的示例 usemin 构建配置

<!-- build:js js/one.js -->
<script src="app/modules/one/one.js"></script>
<script src="app/modules/one/two.js"></script>
<script src="app/modules/one/three.js"></script>
<!-- endbuild -->

<!-- build:js js/two.js -->
<script src="app/modules/two/one.js"></script>
<script src="app/modules/two/two.js"></script>
<script src="app/modules/two/three.js"></script>
<!-- endbuild -->

对于开发版本,我不想缩小脚本,我希望每个模块都放入自己的 js 文件中。所以运行后的 index.html 将是

<script src="js/one.js"></script>
<script src="js/two.js"></script>

对于生产版本,我想缩小脚本并将它们连接到一个文件中。所以 index.html 将是

<script src="js/myApp.js"></script>

我尝试了以下方法,但它不起作用:

<!-- build:myApp js/myApp.js -->
<!-- build:js js/one.js -->
<script src="app/modules/one/one.js"></script>
<script src="app/modules/one/two.js"></script>
<script src="app/modules/one/three.js"></script>
<!-- endbuild -->

<!-- build:js js/two.js -->
<script src="app/modules/two/one.js"></script>
<script src="app/modules/two/two.js"></script>
<script src="app/modules/two/three.js"></script>
<!-- endbuild -->
<!-- endbuild -->

并像这样运行 use-min 任务(prod 将在 prod 任务中设置为 true,在 dev 任务中设置为 false) -

usemin({
          myApp: prod?[uglify({mangle:true})]:'',
          js: prod?'':[uglify({mangle:false})]
      }).

我可以保留两个 index.html 文件并管理它。但我想知道这可以用一个 index.html 来实现吗?

提前感谢您的帮助。

4

2 回答 2

4

看起来您使用的是相同的管道 ID:js

 <!-- build:js js/one.js -->
 <!-- build:js js/two.js -->

尝试使用唯一的管道 ID,如下所示:

 <!-- build:js1 js/one.js -->
 <!-- build:js2 js/two.js -->
于 2015-08-28T11:01:40.267 回答
2

那这个呢?将所有 javascript 文件合并到 2 个文件中,例如在您的开发环境中。之后只需将这两个文件合并为一个大文件?

<!-- build:js js/one.js -->
<script src="app/modules/one/one.js"></script>
<script src="app/modules/one/two.js"></script>
<script src="app/modules/one/three.js"></script>
<!-- endbuild -->

<!-- build:js js/two.js -->
<script src="app/modules/two/one.js"></script>
<script src="app/modules/two/two.js"></script>
<script src="app/modules/two/three.js"></script>
<!-- endbuild -->

<!-- build:myApp js/myApp.js -->
<script src="js/one.js"></script>
<script src="js/two.js"></script>
<!-- endbuild -->

或者甚至使用一个构建来处理所有文件?

<!-- build:myApp js/myApp.js -->
<script src="app/modules/one/one.js"></script>
<script src="app/modules/one/two.js"></script>
<script src="app/modules/one/three.js"></script>
<script src="app/modules/two/one.js"></script>
<script src="app/modules/two/two.js"></script>
<script src="app/modules/two/three.js"></script>
<!-- endbuild -->
于 2015-08-22T17:18:35.453 回答