我用meteor js 做了我的第一个应用程序,我需要有关在特定模板上显示元素的建议。我有保留所有模板的标题和内容 div,其中模板与铁路由器切换。我的标题上有两个按钮,它们不会显示在某些模板上,因此我必须在特定模板上隐藏/显示它。
现在我为附加到主 div onload 的每个模板辅助函数创建了。在该函数中有一些 jQuery hide() 和 show() 函数。我觉得这不是最好的解决方案,我很好奇是否有人使用更好的方法来显示/隐藏不同模板上的元素。
最佳答案
在 Meteor 中,您通常不需要执行诸如附加到 div onload 之类的操作。
假设您的标题有 3 个项目,其中一个始终存在,两个按钮:(为了清晰起见,省略了引导标记)
<Template name="header">
<ul>
<li>Menu item</li>
</ul>
<button>Button 1</button>
<button>Button 2</button>
</template>
然后你可以简单地为标题定义一个助手:
Template.header.helpers({
showButtons: function(){
return (some logic that evaluates to true or false);
}
});
然后将标题修改为:
<Template name="header">
<ul>
<li>Menu item</li>
</ul>
{{#if showButtons}}
<button>Button 1</button>
<button>Button 2</button>
{{/if}}
</template>
没有 jQuery,没有 DOM 操作,没有大惊小怪,并且如果逻辑中的某些条件发生变化并且您需要在同一 route 显示/隐藏按钮,则可以完全响应。
关于javascript - Meteor JS - 在特定模板上显示 DOM 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30356050/