2016-09-21 68 views
0

時,我有一個模板:流星火焰佈局如何通過嵌套的模板與參數渲染

<template name="outerTemplateName"> 
... 
    {{> Template.dynamic template=inner}} 
... 
</template> 

但是,模板,我要呈現爲內模板也有其內部動態模板:

<template name="innerTemplateName"> 
... 
    {{> Template.dynamic template=anotherInner}} 
... 
</template> 

是否可以使用BlazeLayout.render()來實現類似下面的模板?

<template name="outerTemplateName"> 
... 
    {{> innerTemplateName anotherInner="anotherInnerTemplateName"}} 
... 
</template> 
+0

請發表您的渲染代碼。我已經解決了這個問題,但讓我先看看,你現在怎麼稱呼BlazeLayout.render()。 – Jankapunkt

回答

0

我不知道如何將模板傳遞給其他模板,但您可以通過傳遞像這樣的字符串來動態切換模板。

<template name="outerTemplate"> 
    {{> innerTemplate childTemplateName="templateA"}} 
</template> 

<template name="innerTemplate"> 
    {{#if showTemplate 'templateA' }} 
    {{> templateA }} 
    {{/if}} 
    {{#if showTemplate 'templateB' }} 
    {{> templateB }} 
    {{/if}} 
</template> 

<template name="templateA"> 
    <h1>I am templateA</h1> 
</template> 

<template name="templateB"> 
    <h1>I am templateB</h1> 
</template> 

模板助手

Template.innerTemplate.helpers({ 
    showTemplate : function (templateName) { 
     return templateName === this.childTemplateName; 
    } 
});