javascript - Meteor JS - 在特定模板上显示 DOM 元素

标签 javascript meteor onload

我用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/

相关文章:

angular - 类型 'zone' 上不存在属性 'Observable<{}>'

javascript - Meteor - 在页脚中加载脚本

jquery - css 动画 onload jQuery 事件

javascript - 关于复选框检查的困惑

javascript - 如何让它工作 : Dragula drag-and-drop on Meteor

javascript - 将弹出子菜单项添加到子菜单中

javascript - 页面加载时无法调用 JavaScript 函数

javascript - 固定在动画滚动上的双菜单

javascript - Meteor 中的 Cron 作业

javascript - 有什么方法可以在 window.onload 中设置 google onload 回调吗?