更新应用程序包(Ember从rc6到1.0.0,把手从rc4到1.0.0,jquery从1.9.1到2.0.3)我的所有linkTo助手都停止工作; 如果我点击链接,我会收到此警告:
This link-to is in an inactive loading state because at least one of its parameters presently has a null/undefined value, or the provided route name is invalid.
其他一切似乎都没问题;有人可以解释一下吗?
这是我的路由器:
this.resource('eng', function(){
this.route('home');
this.route('aboutUs', {path: 'about-us'});
this.route('newsArchive', {path: 'news-archive'});
this.route('mattressesAreas', {path: 'mattresses-areas'});
this.resource('eng.rent', {path: 'rent' }, function(){
this.route('boulderSmall', {path: 'boulder-small'});
this.route('boulderXl', {path: 'boulder-xl'});
this.route('leadClimbing', {path: 'lead-climbing'});
this.route('speedClimbing', {path: 'speed-climbing'});
this.route('leadClimbingTurret', {path: 'lead-climbing-turret'});
this.route('mattresses', {path: 'mattresses'});
});
this.resource('eng.factory', {path: 'factory'}, function(){
this.route('panelType', {path: 'panel-type'});
this.route('exteriorFinishing', {path: 'exterior-finishing'});
this.route('buildingSystem', {path: 'building-system'});
this.route('design');
});
this.resource('eng.holds', {path: 'holds'}, function(){
this.route('importClimbingVolumes', {path: 'import-climbing-volumes'});
});
this.resource('eng.team', {path: 'team'}, function(){
this.route('alePenna', {path: 'ale-penna'});
});
this.resource('eng.photoGallery', {path: 'photo-gallery'}, function(){
this.route('evolutionClimbing', {path: 'evolution-climbing'});
this.route('pragelatoBoulder', {path: 'pragelato-boulder'});
});
this.route('contacts');
//error catch all
this.route('404', { path: '*:' });
});
这是我的一个例子:
{{#linkTo eng.aboutUs class="nav ck_0"}}About us{{/linkTo}}
答案 0 :(得分:6)
是的,最后我发现我只需要在linkTo帮助器中的引号之间写入路由名称,如下所示:
{{#linkTo 'eng.aboutUs' class="nav ck_0"}}About us{{/linkTo}}
我不知道为什么之前没有引号工作,现在没有,可能在最新的Ember中发生了变化......
答案 1 :(得分:1)
现在不推荐使用linkTo帮助程序,您应该使用link-to来避免将来出现问题。
E.g。 {{#link-to 'post' post}}View post{{/link-to}}