Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 重复使用手柄查找_Javascript_Handlebars.js_Template Engine - Fatal编程技术网

Javascript 重复使用手柄查找

Javascript 重复使用手柄查找,javascript,handlebars.js,template-engine,Javascript,Handlebars.js,Template Engine,给定一个对象数组,我想使用嵌套对象的一个属性来查找把手中关联对象中的各种属性 在本例中,我想显示每个大学的学生列表,以及每个学生所属系的信息 我的代码可以工作,但嵌套查找非常重复: {{lookup (lookup ../majors major) 'dean'}} {{lookup (lookup ../majors major) 'location'}} 我能做些什么吗?我想访问查找的上下文,如下所示: {{#lookup ../majors major}} {{dean}}

给定一个对象数组,我想使用嵌套对象的一个属性来查找把手中关联对象中的各种属性

在本例中,我想显示每个大学的学生列表,以及每个学生所属系的信息

我的代码可以工作,但嵌套查找非常重复:

{{lookup (lookup ../majors major) 'dean'}}
{{lookup (lookup ../majors major) 'location'}}
我能做些什么吗?我想访问查找的上下文,如下所示:

{{#lookup ../majors major}}
    {{dean}}
    {{location}}
{{/lookup}}
var source=$(“#hb template”).html();
var template=handlebar.compile(源代码);
var html=模板(上下文);
$(“#hb html”).html(html)

{{{大学}
{{name}}
{{{学生}
{{name}}
专业
{{major}}
系主任
{{lookup(lookup../majors)'dean'}
部门位置
{{lookup(lookup../major)'location'}
{{/学生}
{{/大学}
变量上下文={
“大学”:[{
“名称”:“示范大学”,
“学生”:[{
“姓名”:“爱丽丝”,
“专业”:“业务”
},
{
“姓名”:“约翰”,
“专业”:“英语”
}
],
“专业”:{
“英语”:{
“院长”:“史密斯博士”,
“位置”:“101室”
},
“业务”:{
“院长”:“琼斯博士”,
“地点”:“999房间”
}
}
},
{
“名称”:“另一所大学”,
“学生”:[{
“姓名”:“鲍勃”,
“专业”:“业务”
}],
“专业”:{
“业务”:{
“院长”:“齐默尔曼博士”,
“地点”:“南校区”
}
}
}
]
};

我的解决方案是:使用并将查找子表达式的结果传递给对象。我不确定这是否是最好的方法,或者这是否真的有效,因此希望您能发表评论

{{#with (lookup ../majors major)}}
    <dt>Department dean</dt>
    <dd>{{dean}}</dd>
    <dt>Department location</dt>
    <dd>{{location}}</dd>
{{/with}}

{{{大学}
{{name}}
{{{学生}
{{name}}
专业
{{major}}
{{{#带(查找../专业)}
系主任
{{dean}}
部门位置
{{location}}
{{/与}}
{{/学生}
{{/大学}
变量上下文={
“大学”:[{
“名称”:“示范大学”,
“学生”:[{
“姓名”:“爱丽丝”,
“专业”:“业务”
},
{
“姓名”:“约翰”,
“专业”:“英语”
}
],
“专业”:{
“英语”:{
“院长”:“史密斯博士”,
“位置”:“101室”
},
“业务”:{
“院长”:“琼斯博士”,
“地点”:“999房间”
}
}
},
{
“名称”:“另一所大学”,
“学生”:[{
“姓名”:“鲍勃”,
“专业”:“业务”
}],
“专业”:{
“业务”:{
“院长”:“齐默尔曼博士”,
“地点”:“南校区”
}
}
}
]
};

我知道这是很久以前的事了,但我想感谢您发布这篇文章。我正在为当前的一个工作项目使用把手,这需要我花一点时间才能弄清楚。感谢您像这样详细地发布您的决议。干杯