我正在尝试在另一个模板中包含基于路径的模板。我让它或多或少地工作但仍然有一些问题,也许这里有人可以让我走上正确的道路。
我已经使用
了{{> UI.dynamic template=route }}
使用帮助程序来解析URL并返回正确的模板名称,但是我有几个问题:
1)当我点击一个链接时,Iron :: Router会识别出这个变化,但模板并没有意识到这一点 - 就像它没有重新加载一样,即使我点击静态链接也是如此。
2)Iron :: Router有一个捕获所有主要请求并将其传递给正确模板的全能,但是如果我有以下路径,我会得到未找到的页面,例如:
/settings -> works
/settings/profile -> 404
我的一切都是这样的:
this.route("/:path?", function() {
});
答案 0 :(得分:0)
尝试使用此帮助程序获取当前路径名称。
UI.registerHelper("currentRouteName",function(){
return Router.current()?Router.current().route.getName():"";
});
然后你可能需要做类似的事情:
var thisRoute = Router.current().route.getName().split("/")
并匹配您正在寻找的路线
'/' + thisRoute[1] + '/';
助手来自 meteor js iron router: apply CSS change whenever route changes并适用于css但可能有助于查看您的用例。