Ember.js Ember无法读取属性';应该取代';未定义的具有新路由的

Ember.js Ember无法读取属性';应该取代';未定义的具有新路由的,ember.js,Ember.js,我只是向我的应用程序添加了一个新路由,当我转换到它时,Ember抛出错误“无法读取未定义的属性'shouldsecorede' 这是我的路由器: App.Router.map ()-> @resource 'pages', -> @resource 'page', {path: ':page_id'}, -> # lots of routes under here, all work @route 'design' #

我只是向我的应用程序添加了一个新路由,当我转换到它时,Ember抛出错误“无法读取未定义的属性'shouldsecorede'

这是我的路由器:

App.Router.map ()->
    @resource 'pages', ->
        @resource 'page', {path: ':page_id'}, ->
            # lots of routes under here, all work

    @route 'design' # new route that error happens when transition to
我开始查看路由器代码,但我真的不确定发生了什么,希望有一些明显的东西我遗漏了。如果我在ember中添加一些日志记录,当它在这里对页面路由进行查找时,实际上会抛出错误,但是该路由本身也可以正常工作

另外,无论我是否从页面路径转换,如果我只是在设计路径上重新加载页面,我会得到相同的错误:

Transitioned into 'design' ember.js?body=1:14464
Uncaught TypeError: Cannot read property 'shouldSupercede' of undefined 

出现此问题的一个原因是,
{{{#link to}}
指向具有动态段但不提供该段的路由


不幸的是,错误消息对于指向正确的方向肯定没有多大帮助。

当我有一个带有动态段的路由并且没有向该动态段传递值时,我遇到了这个问题。可能对你有用。

我开始深入研究这个问题,有助于解决这个问题

原来我有一些链接,比如:
{{{#link to product.show product}}

所以我将所有这些链接都转换为:
{{{#link to product.show product.id}
。我的问题解决了


此外,您可能需要使用
replaceWith
replaceRoute
transitionTo

检查所有用法。它是否有模板?@PatsyIssa是的,我想我实际上已经接近了原因。您是否也可以添加代码链接,路线和资源有点棘手,但是我会把设计路线变成一个资源如果你能创建一个可以复制的jsbin,那会很有帮助。谢谢你,先生,你帮我省了很多麻烦(还有头发)。