首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >模板找不到我的命名iron-router路由

模板找不到我的命名iron-router路由
EN

Stack Overflow用户
提问于 2014-12-14 03:38:44
回答 1查看 1.5K关注 0票数 3

在使用iron-router的流星项目中,我的模板中的pathFor找不到命名路由。我想我已经遵守了guides中的语法。

下面是空格键代码:

代码语言:javascript
复制
<a href="{{pathFor 'tag.show' _id=this._id }}" class="tag" id="{{title}}">{{title}}</a>

下面是iron-router代码:

代码语言:javascript
复制
Router.route('/tags/:_id', function() {
  this.layout('layout');

  this.render('tags');

  this.render('tagDetail', {
    to: 'topDrawer',
    data: function() {
      return Tags.findOne({
        _id: this.params._id
      });
    }
  });
}, {
  name: 'tag.show'
});

我做错了什么?

编辑:我的控制台中的确切错误是

代码语言:javascript
复制
pathFor couldn't find a route named "tag.show"

编辑2:对于踢球,我尝试按名称检索另一条更简单的路线:

代码语言:javascript
复制
Router.route('/', function() {
  this.render('home');
}, {
  name: 'home'
});

Router.go('post.show');

我得到了一个“未定义”的错误。我一直没能解决这个问题。

EN

回答 1

Stack Overflow用户

发布于 2014-12-14 07:19:57

我认为你的声明颠倒了,试一下:

代码语言:javascript
复制
Router.route('tag.show', function() {
  this.layout('layout');

  this.render('tags');

  this.render('tagDetail', {
    to: 'topDrawer',
    data: function() {
      return Tags.findOne({
        _id: this.params._id
      });
    }
  });
}, {
  path: '/tags/:_id'
})

顺便说一句,这可能是由于iron路由器api的变化引起的。我使用的版本是0.9.4,这是我在该版本中声明路由的方式:

代码语言:javascript
复制
this.route('home', {path: '/'});

然后,我在其他地方定义了一个自定义控制器:

代码语言:javascript
复制
HomeController = RouteController.extend({
  // nothing yet
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27462846

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档