Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/424.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 流星路由器,不要通过参数_Javascript_Meteor_Iron Router - Fatal编程技术网

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。