Grunt:访问外部文件中的YAML符号

时间:2016-03-12 22:31:12

标签: javascript gruntjs yaml

我正在尝试从Gruntfile中的外部YAML文件引用值。我正在使用以下方式阅读YAML:

external_config: grunt.file.readYAML('config.yml')

我的config.yml文件包含以下内容:

foo: abc
:bar: def

我可以使用<% %>模板在我的Gruntfile中获取foo的值就好了:

foo: '<%= external_config.foo %>'

但我似乎无法获得:bar的价值。我已经知道键前面的冒号表示符号(Colon in the front: YAML syntax),但我不知道如何从我的Gruntfile中获取它的值。

bar: '<%= external_config.bar %>' // doesn't work
bar: '<%= external_config.:bar %>' // throws error "Unexpected token :"
bar: '<%= external_config.\:bar %>' // throws error "Unexpected token :"

我无法修改YAML文件。有没有办法做到这一点?

1 个答案:

答案 0 :(得分:1)

在模板中使用external_config[':bar']

说明:Grunt只是普通的JavaScript,因此您可以使用括号表示法访问对象的属性。