铁:路由器“通配”不起作用

时间:2014-12-05 23:40:29

标签: meteor iron-router glob

我希望能够匹配这样的路径: /path/anything/goes/here/and/can/be/an/arbitrarily/long/path

所以我尝试了以下所有方法:

Router.route('/path/*', function(){
    this.render('home');
});

我还尝试了路径'/path/:something(*)',我也尝试将第二个参数options对象中的路径指定为Router.route{path: '/path/*', action:myActionFunction}以及一个动作函数。我甚至尝试使用Router.map代替Router.route,如以下两项所述:

https://gentlenode.com/journal/meteor-11-iron-router-cheatsheet/18

http://www.manuel-schoebel.com/blog/iron-router-tutorial

但是,转到/path/anything/goes/here不起作用。它带我到默认的铁:路由器错误页面:

  
    
      
        
          
            

糟糕,看起来客户端或服务器上没有url的路由:“http ... localhost:1710 ... / path / this / should / work / since / to / the / above / links。”

          
        
      
    
  

感谢任何帮助,谢谢。

1 个答案:

答案 0 :(得分:2)

尝试

'/(.*)'

'/path/(.*)'

如果网址确实是domain.com/path /

我通过查看来自this.params的文档集合来提供来自'/(.*)'的路线

如果您需要在捕获之前的任何路由,请在Meteor.startup中放置捕获路由,并在路由器文件客户端之前使用细粒度定义的路由。

希望这会对你有所帮助。