我有两个不同的对象:
1)在global.json
中var objA = {
"menu": {
"icon": [
{
"network": "mail",
},
{
"network": "facebook",
},
{
"network": "twitter",
},
{
"network": "googleplus",
}
]
}
}
2)在index.json
中var objB = {
"facebook": {
"data": "Facebook Data",
},
"twitter": {
"data": "Twitter Data",
},
"mail": {
"data": "Mail Data",
},
"googleplus": {
"data": "GooglePlus Data",
}
}
现在我想通过使用第一个对象值作为 .hbs 文件中的键来访问第二个对象值,就像我们在javascript中一样。
例如:如果我想访问Twitter数据,我将在javascript中使用以下代码来访问它。
for(var i=0; i<objA["menu"]["icon"].length; i++){
console.log(objB[objA["menu"]["icon"][i]["network"]]["data"]);
}
我正在 .hbs 文件中运行每个循环:
{{#each global.objA.menu.icon}}
<li>{{data}}</li>
{{/each}}
在这里,我想基于网络显示每个社交数据。
答案 0 :(得分:0)
我对把手一无所知,但假设它至少是一个javascript,
data = objA.menu.icon.map(e=>objB[e.network])
应该满足你最后的目标愿望。
var objA = {
"menu": {
"icon": [
{
"network": "mail",
},
{
"network": "facebook",
},
{
"network": "twitter",
},
{
"network": "googleplus",
}
]
}
};
var objB = {
"facebook": {
"data": "Facebook Data",
},
"twitter": {
"data": "Twitter Data",
},
"mail": {
"data": "Mail Data",
},
"googleplus": {
"data": "GooglePlus Data",
}
};
data = objA.menu.icon.map(e=>objB[e.network])
console.log(data);
&#13;
答案 1 :(得分:0)