2013-06-05 44 views
0

這些都是我傳遞給把手模板的所有對象。如果語句在另一個如果語句在把手模板中

self.template = template({ data: self.model, lang:self.lang, page:self.mainPage, subpage:self.param }); 

然後在foreach循環中我有一個if語句,我無法訪問父上下文元素。代碼,我有模板和問題內容如下所示:

{{#each data}} 
     <h1>{{../subpage}}</h1> --> This is giving me a subpage value 
     {{#if this.brand}} 

        {{#if ../subpage}} 
        <h1>WHY IS THIS NOT SHOWING?</h1> --> This is what i am trying to achieve 
        {{/if}} 

     {{/if}} 
    {{/each}} 

任何想法如何實現這一目標?非常感謝您提供所有答案/評論!

回答

0

{{#if this.brand}}進入上下文的另一個級別,所以您必須不是一次而是兩次轉到父上下文。因此

您的模板應該是:

[ 
    { 
     brand: "Brand A", 
     otherFields: "here" 
    } 
] 

這裏是一個的jsfiddle演示解決方案:nested if statement context escaping

我希望

{{#each data}} 
    <h1>{{../subpage}}</h1> 
    {{#if this.brand}} 

     {{#if ../../subpage}} 
      <h1>This shows now!</h1> 
     {{/if}} 

    {{/if}} 
{{/each}} 

這應該類似於self.model值工作這有幫助!