关于'dust js递归'

are there any bugs about 'dust js recursion'?

本文关键字:递归 js dust 关于      更新时间:2023-09-26

Dust js web给了我们一些例子。其中之一就是递归。

当我将第三节中json的'name'和第一节中的'name]更改为其他字符串(如'node')时,输出是错误的!我做错了什么?

代码:

{node}{~n}{#kids}{>recursion:./}{/kids}
{
  "node": "1",
  "kids": [{
    "node": "1.1",
    "kids": [{
      "node": "1.1.1"
    }]
  }]
}

它不起作用,因为"递归"是在dust上下文中加载的模板。

在尘埃中,你可以按名称加载其他模板:所以当他写这篇文章时:

{>recursion:./}

他正在加载一个名为递归的模板。您可以在示例文件中找到它。

这是递归模板:

{
name:     "recursion",
source:   "{name}{~n}{#kids}{>recursion:./}{/kids}",
context:  {
            name: '1',
            kids: [
              {
                name: '1.1',
                kids: [
                  {name: '1.1.1'}
                ]
              }
            ]
          },
expected: "1'n1.1'n1.1.1'n"
}

您应该创建另一个带有节点字段的模板,将其加载到dust上下文中,然后使用它。