我使用函数在merge-json模块中配置我需要的对象。它有效,但我不知道这是好事还是坏事。
function getLanguageObj( src ){
var inputTxt = '',
inputObj = '',
tmp;
for(var i in src){
tmp = '';
inputTxt += '"' + src[i].language + '":{files:[{src:[';
for(var j in apps){
tmp += '"<%= ' + apps[j].app + '.app %>/{,*/}*-' + src[i].language + '.json"';
if( j < (apps.length - 1) ){
tmp += ',';
}
}
inputTxt += tmp + '],dest:"<%= secure.dist %>/languages/locale-' + src[i].language + '.json"},{'
+ 'src:[' + tmp + '],dest:"<%= secure.app %>/languages/locale-' + src[i].language + '.json"}]}';
if( i < (src.length - 1) ){
inputTxt += ',';
}
}
inputObj = eval("(" + '{' + inputTxt + '}' + ")") ;
return inputObj;
}
langObj = getLanguageObj( languages );
我使用的grunt.initConfig
:
"merge-json": langObj