昨天我将流星和我的陨石包更新到最新版本。今天,铁路由器没有表现。当我导航到参数化路线时,不加载参数。是什么赋予了?我查看了铁路由器的文档,它仍然指定了我之前使用的相同方案。
这是我创建的路线文件
Router.map(function() {
this.route('home', {
path: '/'
});
this.route('list', {
path: '/:_id',
waitOn: function() {
return Meteor.subscribe('lists')
},
data: function() {
var list = Lists.findOne({
_id: this.params._id
});
Session.set('listId', list._id);
return list;
}
});
});
当我将页面加载到http://localhost/1234
时,铁路由器中的路径已正确设置为/1234
,但它无法将最后一位识别为参数。
答案 0 :(得分:1)
我担心什么是空的不是你的this.params
对象而是list
文件,至少是第一次执行路线。当然,这是由与获取服务器数据相关的延迟引起的。
你可能认为它不应该发生,因为你使用了waitOn
钩子。但要实现这一目标,您还需要做另外两件事:
Router.onBeforeAction('loading');
并定义加载模板:
Router.configure({
loadingTemplate: 'someTemplateName'
});
所以如果你还没有这样做,请更新。