2012-02-20 30 views
2

Dust js網頁給了我們一些例子。其中之一是遞歸。有沒有關於'dust js recursion'的錯誤?

當我將第三節中的json的'name'和第一節中的'name'更改爲'node'等其他字符串時,輸出是錯誤的!我究竟做錯了什麼?

代碼:

{node}{~n}{#kids}{>recursion:./}{/kids} 

{ 
    "node": "1", 
    "kids": [{ 
    "node": "1.1", 
    "kids": [{ 
     "node": "1.1.1" 
    }] 
    }] 
} 

回答

0

它不起作用,因爲「遞歸」在塵土背景下加載的模板。

在灰塵可以通過名稱來加載其他模板:所以當他這樣寫道:

{>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" 
} 

您應該創建與節點域另一個模板,在塵土背景下加載它,然後只用它。