使用 Dust.JS 2.7.2 到 ul/li 标记呈现对象层次结构时出现循环问题
Looping issue when rendering an object hierarchy using Dust.JS 2.7.2 to ul/li tags
我正在尝试在 Dust 2.7.2 中渲染对象结构,例如
{
name:"Home Page",
url: "/",
"sub-page1": {
name: "Sub Page 1",
url: "/sub-page1",
"sub-sub-page1": {
"name": "Sub Sub Page1",
"url": "/sub-page1/sub-sub-page1"
}
}
}
类似
<ul><li><a href="/">Home Page</a><ul><li><a href="/subpage1">Sub Page 1</a> ...
使用递归部分,但我似乎无法在不导致无限循环的情况下遍历可变命名对象。
我目前的尝试看起来像这样,部分调用本身:
<li>
<a href="{url}">{name}</a>{#.}<ul>{>"components/menu/recurlist"/}</ul>{/.}
</li>
Dust 无法猜测您的嵌套上下文对象的名称,因为它每次都在变化。您确实需要在所有级别上保持相同的嵌套结构。如果绝对必要,您可以编写自定义帮助程序来解决这个问题,但这超出了这个问题的范围。
规范化数据后,您的模板将变得简单:
<ul>
<li><a href="{url}">{name}</a>
{#subpage}{>"components/menu/recurlist"/}{/subpage}
</li>
</ul>
我正在尝试在 Dust 2.7.2 中渲染对象结构,例如
{
name:"Home Page",
url: "/",
"sub-page1": {
name: "Sub Page 1",
url: "/sub-page1",
"sub-sub-page1": {
"name": "Sub Sub Page1",
"url": "/sub-page1/sub-sub-page1"
}
}
}
类似
<ul><li><a href="/">Home Page</a><ul><li><a href="/subpage1">Sub Page 1</a> ...
使用递归部分,但我似乎无法在不导致无限循环的情况下遍历可变命名对象。 我目前的尝试看起来像这样,部分调用本身:
<li>
<a href="{url}">{name}</a>{#.}<ul>{>"components/menu/recurlist"/}</ul>{/.}
</li>
Dust 无法猜测您的嵌套上下文对象的名称,因为它每次都在变化。您确实需要在所有级别上保持相同的嵌套结构。如果绝对必要,您可以编写自定义帮助程序来解决这个问题,但这超出了这个问题的范围。
规范化数据后,您的模板将变得简单:
<ul>
<li><a href="{url}">{name}</a>
{#subpage}{>"components/menu/recurlist"/}{/subpage}
</li>
</ul>