我正在处理我的buildscript,我需要更新YAML(.yml准确)文件中的值.
为了便于开发,我只是将其定义为我的默认任务:
grunt.registerTask('default', function() {
var conf = grunt.file.readYAML('config.yml');
// Shows correct contents of config.yml
console.log(conf);
// Changing the value of key 'deploy'
conf['deploy'] = 'Hello World';
// Trying to write the updated data back to file
grunt.file.write('config.yml', conf);
// Re-reading the new file
var conf2 = grunt.file.readYAML('config.yml');
// logs [ 'object Object' ]
console.log(conf2);
});
Run Code Online (Sandbox Code Playgroud)
我想我的评论非常清楚我想要做什么 - 更新配置设置.
[ 'object Object' ]记录的原因是因为它实际写入该文件.这意味着我不能简单地做grunt.file.write('config.yml', conf);,我需要像JSON.stringifyYAML 一样的东西.这样的事情存在吗?如何在Grunt中更新yml文件中的值?
我应该在样式表中为元素添加"默认"样式,甚至不在我的页面上使用吗?
例如,当我只用h1,h2,h3和h4,我真的需要添加样式h5和h6?或者当我不在我的网页上使用表格时,我是否需要添加基本样式?
当然可以说"以防万一......",但另一方面它是所有必须转移的数据.
我正在编写一个服务,用某些查询参数做一些事情,他们的名字是已知的.
因为我不在控制器中,所以我不能使用params插件.
如何在不使用params插件的情况下访问Zend Framework 2中的查询参数?有没有办法在控制器外部使用params插件?
我尝试在SASS中循环遍历地图,但它没有按预期工作.
鉴于以下列表:
$names: (
peter: (
color: #f00,
height: 20px,
name: first
),
susan: (
color: #0f0,
height: 40px,
name: second
)
);
Run Code Online (Sandbox Code Playgroud)
我想循环它并创建一个这样的CSS输出:
.first {
color: #0f0,
height: 40px,
}
.second {
color: #0f0,
height: 40px,
}
Run Code Online (Sandbox Code Playgroud)
为此,我尝试创建一个循环遍历地图的mixin并将其值输出到CSS:
@mixin classes($map) {
@each $key in $map {
.#{map-get(map-get($key, $map), name)} {
// Rules
}
}
}
@include classes($names);
Run Code Online (Sandbox Code Playgroud)
不幸的是循环没有运行,它退出时出现以下错误消息:
$map: ("peter" (color: #f00, height: 20px, name: first)) is not a map for `map-get'
Run Code Online (Sandbox Code Playgroud)
我做错了什么,是不是可以嵌套来电map-get?