0

为我使用 Jammit 的 sinatra 应用程序获取了 assets.yml 文件。

这是我想要完成但不能完成的示例。

  application: &application
    - app/assets/js/vendor/jquery-2.1.1.js
    - app/assets/js/vendor/underscore.js
    - app/assets/js/underscore.strings.js


  other_app:
    - <<: *application
    - app/assets/js/underscore.strings.js
    - app/assets/js/vendor/angularjs/angular.js
    - app/assets/js/vendor/angularjs/angular-sanitize.js
    - app/assets/js/vendor/angular_plugins/**/*.js

这是我得到的错误

no implicit conversion of Hash into String

在我的布局中包含其他包很容易,但这意味着越来越多的请求,我不能轻易暗示所需的资产订单。(例如,这个包之前需要角度包含)。

谷歌搜索了半天,一无所获!谢谢!

4

2 回答 2

0

我猜它的缩进问题只是,没有别的。您可以在以下位置验证您的 .yml 内容

http://yaml-online-parser.appspot.com/ 

并尝试它,清楚地表明它无法正确解析它。以完全相同的方式复制以下内容,它将开始正确解析:

 application: &application
  - app/assets/js/vendor/jquery-2.1.1.js
  - app/assets/js/vendor/underscore.js
  - app/assets/js/underscore.strings.js


other_app:
  - <<: *application
  - app/assets/js/underscore.strings.js
  - app/assets/js/vendor/angularjs/angular.js
  - app/assets/js/vendor/angularjs/angular-sanitize.js
  - app/assets/js/vendor/angular_plugins/**/*.js

它只有1个空格的差异。检查此链接:http: //goo.gl/mUFNud

希望能帮助到你 :)

于 2014-10-17T21:28:32.737 回答
0

答案如下

 application: &application
    - app/assets/js/vendor/jquery-2.1.1.js
    - app/assets/js/vendor/underscore.js
    - app/assets/js/underscore.strings.js


  other_app:
    - *application
    - app/assets/js/underscore.strings.js
    - app/assets/js/vendor/angularjs/angular.js
    - app/assets/js/vendor/angularjs/angular-sanitize.js
    - app/assets/js/vendor/angular_plugins/**/*.js

没有 <<: 只是 *申请

于 2014-10-17T21:51:14.593 回答