【问题标题】:meteor blaze layout how to pass nested template with parameter when render流星火焰布局如何在渲染时传递带有参数的嵌套模板
【发布时间】:2016-09-23 21:11:59
【问题描述】:

我有一个模板:

<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>

【问题讨论】:

  • 请发布您的渲染代码。我已经解决了这个问题,但让我先看看,你现在是如何调用 BlazeLayout.render() 的。

标签: meteor meteor-blaze


【解决方案1】:

我不知道如何将模板传递给其他模板,但您可以通过像这样传递一个字符串来动态切换模板。

<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;
    }
});

【讨论】:

    猜你喜欢
    • 2017-02-09
    • 1970-01-01
    • 2016-06-10
    • 2016-05-18
    • 1970-01-01
    • 1970-01-01
    • 2016-11-17
    • 1970-01-01
    • 2014-05-07
    相关资源
    最近更新 更多