【问题标题】:Conditional Dependencies in bower.jsonbower.json 中的条件依赖
【发布时间】:2014-06-13 19:58:05
【问题描述】:

我正在编写自己的 Yeoman 生成器,目前正在使用 Bower 处理依赖项。我想要一个提示,询问用户他/她对项目需要哪些依赖项。该列表如下所示:

[?] What more would you like? (Press <space> to select)
‣⬡ jQuery
 ⬡ jQuery Mobile
 ⬡ Zepto
 ...

但是,我遇到了一些麻烦,使用用户的导入来修改我的 bower.json。 bower.json 如下:

{
  "name": "<%= _.slugify(blogName) %>",
  "version": "0.0.0",
  "private": true,
  "dependencies": { 
    <% if (includeJQuery) { %>
      "jquery": "jquery/jquery",
    <% } if(includeZepto) { %>
      "zepto": "http://zeptojs.com/zepto.js",
    <% } %>
  }
}

如果用户在提示中选择相应的框,则 includeJQuery 和 includeZepto 设置为 true。当我在不选择任何框的情况下运行 yeoman 生成器时,它运行良好。但是,如果我选择我想要 Zepto,则会出现错误:

bower EMALFORMED    Failed to read bower.json

Additional error details:
Unexpected token }

我看不出我的配置问题出在哪里,只有当我选择至少一个包时才会发生这种情况。此外,如果我只有 1 个依赖项(比如说 jQuery),我可以很好地切换它;只有当我想切换多个依赖项时才会出现问题。

【问题讨论】:

    标签: yeoman bower yeoman-generator


    【解决方案1】:

    问题是由尾随逗号引起的。包含的最终依赖项不能有尾随逗号。这对于我心目中的生成器设置来说实际上是相当有问题的,但至少这个问题已经解决了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-25
      • 1970-01-01
      • 2014-09-24
      • 1970-01-01
      • 2015-10-18
      • 1970-01-01
      • 1970-01-01
      • 2019-09-18
      相关资源
      最近更新 更多