Javascript 流星中的路由

Javascript 流星中的路由,javascript,meteor,Javascript,Meteor,在Meteor中,我使用主干网为我的应用程序中的不同页面提供路由。我目前有一个个人资料和一个管理页面。当我进入个人资料页面时,它显示的和它应该显示的一样,但是当我进入管理Meteor时,它会返回到主页 另外,如果有人对Meteor中的页面有更好的模式或最佳实践,请随意分享,因为这相当麻烦 我使用以下模板决定要显示的页面: <template name="root"> {{> navbar}} {{#if pageIs "profile"}} {{&g

在Meteor中,我使用主干网为我的应用程序中的不同页面提供路由。我目前有一个个人资料和一个管理页面。当我进入个人资料页面时,它显示的和它应该显示的一样,但是当我进入管理Meteor时,它会返回到主页

另外,如果有人对Meteor中的页面有更好的模式或最佳实践,请随意分享,因为这相当麻烦

我使用以下模板决定要显示的页面:

<template name="root">
    {{> navbar}}
    {{#if pageIs "profile"}}
      {{> profile}}
      {{else}}{{#if pageIs "administration"}}
        {{> administration}}
      {{else}}
        {{> main_page}}
      {{/if}}
    {{/if}}
</template>
以及我的主干路由器中的以下代码:

var ProtonRouter = Backbone.Router.extend({
    routes: {
        "profile": "profile",
        "admin": "administration",
        "administration":"administration"
    },
    profile: function () {
        Session.set('page','profile');
    },
    administration: function (){
        Session.set('page', 'administraion');
    },
    mainPage: function(){
        Session.set('page',null);
    }
});

pageIs方法中的log语句会记录几次未定义的日志,然后记录正确的页面,即使是在管理时,Meteor似乎也不会重新加载所选页面,模板仍然会命中最后一条else语句。

很多人使用此路由系统:


它真的很容易使用,专为Meteor设计。

更新:Iron路由器被弃用,取而代之的是Flow路由器。未来还有很多

过时的:以前常用的路由器是Iron路由器:


在发布时,Iron Router结合了两种最广泛使用的meteor路由器(和)的作者的努力,是meteor在Flow Router之前的事实上的官方路由器。

在meteor早期,建议使用主干网进行路由

安德鲁在他的帖子中指出,路由器已经成为最受欢迎的选择:

更简单的解决方案是flow router:


要在知情的情况下决定使用哪种路由器,您可以同时选择这两种路由器。

谢谢!我想试试。现在已经过时了,开发也停止了。接班人见接受职位。
var ProtonRouter = Backbone.Router.extend({
    routes: {
        "profile": "profile",
        "admin": "administration",
        "administration":"administration"
    },
    profile: function () {
        Session.set('page','profile');
    },
    administration: function (){
        Session.set('page', 'administraion');
    },
    mainPage: function(){
        Session.set('page',null);
    }
});