【问题标题】:Redirecting page with Iron-Router使用 Iron-Router 重定向页面
【发布时间】:2014-04-24 04:17:17
【问题描述】:

目前我正在使用 Meteor 提供的帐户包来允许人们注册我正在开发的网站。我想让用户有一个简历页面,每当我登录到某个特定的人时,都会出现一个侧边栏导航,其中有很多链接,其中一个是“简历”。我希望 bio 将我从主页重定向到我的 bio 页面,即:

localhost:3000/ -> localhost:3000/bio/uSerId23453423434

现在写我正在使用 Iron-Router 来做这个:

...
<li><a href="{{pathFor 'bio'}}">Bio</a></li>
...

在我的路由器中,我有:

Router.map(function() {
    ...
    this.route('bio',
               {path: '/bio/:_id',
                data: function () { return {_id: Meteor.userId()} }
               });
    ...

但是当我点击链接时,我没有被重定向到任何地方。关于我做错了什么的任何想法?

【问题讨论】:

    标签: meteor iron-router


    【解决方案1】:

    您的路径中不需要参数 _id,因为您已经在使用 Meteor.userId()。如果 Iron-router 在模板中找不到 _id 参数,则不会渲染。删除它将解决您的问题:

    Router.map(function() {
        ...
        this.route('bio',
                   {path: '/bio',
                    data: function () { return {_id: Meteor.userId()} }
                   });
        ...
    

    如果您想保留带有 _id 的路径,您应该使用 {{#with}} 为您的 {{pathFor 'bio'}} 设置数据上下文进行渲染

    您可以在以下位置查看更多信息:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-19
      • 1970-01-01
      • 1970-01-01
      • 2014-06-19
      • 2020-07-04
      • 1970-01-01
      • 2017-11-23
      • 1970-01-01
      相关资源
      最近更新 更多