首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Usemin“不同的源尝试写入相同的目标”

Usemin“不同的源尝试写入相同的目标”
EN

Stack Overflow用户
提问于 2014-10-09 23:01:47
回答 4查看 2.7K关注 0票数 15

我有一个AngularJS应用程序,我正在为usemin工作。这个应用程序有2个html页面,两个页面都包含一个缩小为common.js的块,其他页面包括为这些特定页面缩小的js。

page1.html

代码语言:javascript
复制
<!-- build:js scripts/common.js -->
<!-- bower:js -->
<script src="a.js"></script>
<script src="b.js"></script>
<!-- endbower -->
<!-- endbuild -->

<!-- build:js scripts/page1.js -->
<!-- bower:js -->
<script src="c.js"></script>
<script src="d.js"></script>
<!-- endbower -->
<!-- endbuild -->

page2.html

代码语言:javascript
复制
<!-- build:js scripts/common.js -->
<!-- bower:js -->
<script src="a.js"></script>
<script src="b.js"></script>
<!-- endbower -->
<!-- endbuild -->

<!-- build:js scripts/page2.js -->
<!-- bower:js -->
<script src="e.js"></script>
<script src="f.js"></script>
<!-- endbower -->
<!-- endbuild -->

Gruntfile.js

代码语言:javascript
复制
useminPrepare: {
    html: ['<%= yeoman.app %>/page1.html', '<%= yeoman.app %>/page2.html'],
        options: {
            dest: '<%= yeoman.dist %>'
        }
    },

Usemin感到不安,因为在两个文件中都定义了common.js,错误为:致命错误:不同的源试图写入相同的目标:。我认为我需要在useminPrepare中同时包含page1和page2,以便正确地生成page1.js和page2.js。人们如何解决这个问题?

EN

回答 4

Stack Overflow用户

发布于 2014-11-02 20:23:00

通常使用angular的人会创建单页面应用程序,并且只为整个页面的骨架创建一个“主”index.html。通过这种方式,您只需处理一组文件。使用ui-router、ng-includes或其他命令将不同的子页面呈现到给定的div中。

票数 1
EN

Stack Overflow用户

发布于 2015-02-27 05:04:50

当我遇到这个问题时,我遇到的问题是,在build/endbuild html注释之间,代码必须完全相同。看起来它应该在文件名上匹配,但它似乎在注释之间的内容上匹配。甚至tab空格也可能是个问题。

票数 1
EN

Stack Overflow用户

发布于 2015-10-02 01:56:43

未测试的警告。

您可以创建一个自定义块,它会将块重写为<script src="scripts/common.js"></script>,但不会试图在usemin进程中“构建”脚本。

代码语言:javascript
复制
options: {
    blockReplacements: {
      noBuild: function (block) {
          return '<script src="scripts/common.js"></script>';
      }
    }

然后,在您不想为其构建通用脚本,但希望替换其路径的所有HTML文件中,写入以下内容:

代码语言:javascript
复制
<!-- build:noBuild scripts/common.js -->
<!-- bower:js -->
<script src="a.js"></script>
<script src="b.js"></script>
<!-- endbower -->
<!-- endbuild -->
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26281756

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档