单击相同 link 时使 Iron Router 重新加载页面

Make Iron Router reload page when clicking on the same link

我刚开始使用 Meteor 和 Iron Router 来创建一个简单的站点。站点的导航栏上有几个 link,其中之一称为 random。这个想法是,当用户单击它时,运行dom post 将显示在页面上。

现在 Iron Router 似乎会阻止重新加载与当前页面相同 link 的页面。这是一个很棒的功能,除了在我的情况下我需要重新加载它以便用户可以看到新的 post。

相关代码如下:

Router.route('/random', function() {
    console.log("running this!");
    this.layout('SinglePostLayout', {
        data: function () { return draw(Posts, {}) }
    });
    this.render('post');

集合中的draw函数returns一个post。完美很有趣,但这与这里无关。我使用 console.log.

只确认了一次代码 运行

有办法解决这个问题吗?我想为除 运行dom 之外的所有其他 links 保留不重新加载行为。我已经搜索了一段时间的答案,但找不到任何东西。

谢谢!

因为您没有使用动态路由来显示每个 post。

您可以使用 window 对象中的 Location.reload() 方法,并使用纯 Javascript.

  if(Meteor.isClient){
    Template.home.events({
        'click #randomHref':function(){
            document.location.reload(true);
            // Router.go('/') don't work.
        }
    })
}