gpt4 book ai didi

json - 无法使用 Handlebars JS 和 Ember JS 循环遍历嵌套的 JSON 数组(大写属性)

转载 作者:行者123 更新时间:2023-12-04 23:51:52 24 4
gpt4 key购买 nike

我正在学习 Ember JS 和 Handlebars JS,所以我对此很陌生。

我在尝试遍历嵌套的 JSON 数组时遇到问题。我无法遍历下面 JSON 中的“页面”。

这是JSON:

{
"Pages": [
{
"Id": 1,
"Name": "Page 1",
"Objects": [
{
"Width": 100,
"Height": 200,
"Type": "Shape"
},
{
"Width": 150,
"Height": 250,
"Type": "Image"
}
]
},
{
"Id": 2,
"Name": "Page 2",
"Objects": [

]
}
],
"Settings": {
"URL": "http://THEURL",
"Location": true,
"Navigation": true
},
"Id": 1,
"Title": "The Title",
"Description": "The Description"
}

这是我的 Handlebars 模板:
<script type="text/x-handlebars" id="pages">
<div class="container">
<div class="row">
<h1>{{Title}}</h1> <!-- This works -->
<h2>{{Description}}</h2> <!-- This works -->

<!-- This doesn't work: -->
<ul>
{{#each Pages}}
<li>Page ID: {{Id}} <br /> Page Name: {{Name}} <br />
<ul>
{{#each Objects}}
<li>{{Type}}</li>
{{/each}}
</ul>
</li>
{{/each}}
</ul>

</div>
</div>
</script>

另外,当我添加:
{{Pages}}

在 Handlebars 模板中,浏览器中的输出为:
[object Object],[object Object]

我不确定这是否是问题。

最佳答案

大写变量被认为是全局范围,您需要完全限定它们或将它们设为小写

http://emberjs.jsbin.com/UhIGevUf/1/edit

<div class="container">
<div class="row">
<h1>{{model.Title}}</h1> <!-- This works -->
<h2>{{model.Description}}</h2> <!-- This works -->

<!-- This doesn't work: -->
<ul>
{{#each page in model.Pages}}
<li>Page ID: {{page.Id}} <br /> Page Name: {{page.Name}} <br />
<ul>
{{#each obj in page.Objects}}
<li>{{obj.Type}}</li>
{{/each}}
</ul>
</li>
{{/each}}
</ul>

</div>
</div>

关于json - 无法使用 Handlebars JS 和 Ember JS 循环遍历嵌套的 JSON 数组(大写属性),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21164870/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com