我只是在我的应用程序中添加了一条新路径,当我转换到它时,Ember会抛出错误"无法读取属性' shouldSupercede'未定义"。
这是我的路由器:
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
答案 0 :(得分:19)
此问题的一个原因是{{#link-to}}
指向具有动态细分而未提供该细分的路线。
不幸的是,错误消息对于指向正确的方向肯定不是很有帮助。
答案 1 :(得分:0)
当我有一个带有动态细分的路线并且没有将值传递给该动态细分时,我遇到了这个问题。 Is there really no way to make an optional dynamic segment in Ember?可能对您有用。
答案 2 :(得分:0)
我开始深入研究DEfusion的有用message问题。
事实证明我有一些链接,例如:@staticmethod
def _open_csv_file_for_write(filename, data, csv_writer=csv.writer, **kwargs):
with open(filename, 'a') as csv_handler:
writer = csv_writer(csv_handler, **kwargs)
。
所以我已将所有此类链接转换为:{{#link-to product.show product}}
。我的问题已经解决了。
此外,您可能希望使用{{#link-to product.show product.id}}
,replaceWith
和replaceRoute