Meteorjs有效显示管理面板

时间:2012-12-18 10:10:27

标签: javascript web meteor

我已经安装了陨石和路由器包

现在我有一个主页app.html

<body>
  <div class="container">
    <div class="page-header">
      <a href="/">
        <h1>Mi page</h1>
      </a>
    </div>
    <div class="content">
      {{renderPage}}
    </div>
  </div>
</body>

好的,现在所有页面都在{{renderPage}}内呈现。

现在用户转到/ panel并将用户面板渲染,这是一个棘手的部分

此部分有一个cpanel_nav_div和一个cpanel_body,我认为当用户保留在面板部分时,每次用户点击其中一个面板选项链接时,cpanel_nav_div都不会呈现效率更高效,因此只需更改cpanel_body。 / p>

最好的方法是什么?

它有一种方法可以做其他路由器和过滤器路由,所以当路由匹配/ panel / ...所有内容都进入cpanel_body而不是进入{{renderPage}} ????

设置Session.get和Session.set并根据会话在cpanel_body内呈现内容(我们错过路线)

每次使用路线并渲染cpanel_nav和cpanel_body吗?

请求帮助

1 个答案:

答案 0 :(得分:1)

您可以告诉Meteor不要使用preserve重新呈现模板的一部分:

  

您可以在重新渲染期间“保留”DOM元素,在替换周围的HTML时将现有元素保留在文档中。这意味着重新渲染模板不需要干扰文本字段,iframe和它包含的其他敏感元素。要保留的元素必须既作为旧DOM中的节点又作为新HTML中的标记存在。 Meteor会在保存的元素周围修补DOM。

     

例如,要使用模板'foo'中的ID保留所有元素,请使用:

 Template.foo.preserve({
   'input[id]': function (node) { return node.id; }
 });

所以你可能想要使用preserve方法告诉M​​eteor不要重新渲染你的cpanel_nav_div元素。