handlebars.js - 使用每个循环的内容访问另一个变量
问题描述
传递到车把模板的数据如下所示:
a = {
x: {
name: "xavier"
},
y: {
name: "yamal"
},
}
b = {
properties: {
x: {
property: "number"
}
}
}
车把模板如下所示:
<div class="left-panel">
{{a.x.name}} // Prints correctly "xavier"
{{#each b.properties}}
<h4>{{@key}}</h4> // Prints correctly "x"
<h4>{{ ../a.[@key].name }}</h4> // does not print "xavier"
{{/each}}
</div>
如您所见,我希望能够使用 in中的键访问name
dict 的。我怎样才能做到这一点?a
b
解决方案
您的问题与此问题基本相同:Handlebars.js - Access object value with a variable key
唯一额外的细节是您需要使用Handlebars 子表达式来执行两个查找(首先是@key
; 然后是'name'
)。
子表达式将允许您查找@key
on的值../a
并将其传递给对'name'
第一次查找结果的值的第二次查找。
模板中的相关行变为:
<h4>{{lookup (lookup ../a @key) 'name'}}</h4>
这是一个供您参考的小提琴: https ://jsfiddle.net/76484/b0puy52n/
推荐阅读
- postgresql - 在 PostgreSQL graphql hasura 的列中查找重复条目?
- c# - 不同的任务方法工作方式不同
- c - 如何在C中用$分隔列
- python - MuJoCo 已安装,但未显示正在运行的示例动画。它没有给出任何错误,但只是没有显示任何动画
- python - 从 csv 创建 pascol voc xml
- python - 使用 SQLAlchemy 连接到没有用户名和密码的 SQL Server
- python - 如何在不实际将数据发送到 Azure Speech API 的情况下使用 pytest 模拟转录结果
- spring-boot - Spring Cloud Data Flow Apps 未获取外部参数和环境变量
- c# - 如何在c#中抛出异常但不停止进程?
- css - vue js 将scss编译成css