在使用iron-router的流星项目中,我的模板中的pathFor找不到命名路由。我想我已经遵守了guides中的语法。
下面是空格键代码:
<a href="{{pathFor 'tag.show' _id=this._id }}" class="tag" id="{{title}}">{{title}}</a>下面是iron-router代码:
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'
});我做错了什么?
编辑:我的控制台中的确切错误是
pathFor couldn't find a route named "tag.show"编辑2:对于踢球,我尝试按名称检索另一条更简单的路线:
Router.route('/', function() {
this.render('home');
}, {
name: 'home'
});
Router.go('post.show');我得到了一个“未定义”的错误。我一直没能解决这个问题。
发布于 2014-12-14 07:19:57
我认为你的声明颠倒了,试一下:
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,这是我在该版本中声明路由的方式:
this.route('home', {path: '/'});然后,我在其他地方定义了一个自定义控制器:
HomeController = RouteController.extend({
// nothing yet
});https://stackoverflow.com/questions/27462846
复制相似问题