Javascript 流星路由器,不要通过参数
客户端代码片段:Javascript 流星路由器,不要通过参数,javascript,meteor,iron-router,Javascript,Meteor,Iron Router,客户端代码片段: Template.projectEditButton.events({ "click .edit": function() { Router.go('projectForm', {prjId: this._id}); } }); 此时,此.\u id是正确的。在路由器文件中: Router.route('/projects/form', { name: 'projectForm', data: function() { return Proje
Template.projectEditButton.events({
"click .edit": function() {
Router.go('projectForm', {prjId: this._id});
}
});
此时,此.\u id是正确的。在路由器文件中:
Router.route('/projects/form', {
name: 'projectForm',
data: function() {
return Projects.findOne(this.params.prjId);
}
});
此.params为空。我缺少什么?您需要将参数添加到路线定义中,以便映射正常工作:
Router.route('/projects/form/:prjId', {
name: 'projectForm',
data: function() {
return Projects.findOne(this.params.prjId);
}
});
您需要将参数添加到管线定义中,以便映射正常工作:
Router.route('/projects/form/:prjId', {
name: 'projectForm',
data: function() {
return Projects.findOne(this.params.prjId);
}
});
您的浏览器中的url是什么样子的?是
/projects/form/xxxx
还是projects/form?prjId=xxx
?您可能需要查看this.params.query
而不是this.params
(需要检查才能看到,即使它在那里,通常也会显示为空。url在浏览器中是什么样子的?是/projects/form/xxxx
还是projects/form?prjId=xxx
?您可能需要查看this.params.query
而不是this.params
(它需要检查才能看到,通常它看起来是空的,即使它在那里。Duh.谢谢。由于此表单同时用于编辑和添加,我附加了一个“?”.Works.Duh.谢谢。由于此表单同时用于编辑和添加,我附加了一个“?”.Works。