我肯定錯過了Handlebars的工作方式。我需要根據變量的值調用不同的部分。目前,我發現做到這一點的唯一方法是這樣的:將變量用於部分模板
<template name="base">
{{#if a}}{{> a}}{{/if}}
{{#if b}}{{> b}}{{/if}}
{{#if c}}{{> c}}{{/if}}
</template>
,並在相應JS:
Template.base.a = function() {
return (mode === "a");
}
Template.base.b = function() {
return (mode === "b");
}
Template.base.c = function() {
return (mode === "c");
}
...這令我非常冗長。我倒是真的喜歡做的是一樣的東西:
<template name="base">
{{> {{mode}} }}
</template>
在換句話說,mode
值將是被稱爲部分的名稱。
這似乎是它必須是一個非常常見的用例,但我找不到任何這種在線的例子。我哪裏錯了?
官方** dynamic partials **(來自Joshua)真的應該是默認的答案。 – mikemaccana