Ember.js 在余烬,所有路线都比明星路线优先

Ember.js 在余烬,所有路线都比明星路线优先,ember.js,ember-router,Ember.js,Ember Router,我有一个路线,捕捉所有丢失的路线,并呈现404样式的页面。我想创建一个与任何以“/browse/”开头的url匹配的路由,例如“/browse/shoes/red”。这似乎是正确的方法: App.Router.map(function() { this.route('browse', { path: '/browse/*fields' }); this.route('missing', { path: '/*badPath' }); }); 然而,ember的RouterRecogni

我有一个路线,捕捉所有丢失的路线,并呈现404样式的页面。我想创建一个与任何以“/browse/”开头的url匹配的路由,例如“/browse/shoes/red”。这似乎是正确的方法:

App.Router.map(function() {
  this.route('browse', { path: '/browse/*fields' });
  this.route('missing', { path: '/*badPath' });
});
然而,ember的RouterRecogniter总是在浏览路径上选择丢失的路径。(在route-recognizer.js的sortSolutions中有这样做的逻辑。)这是Ember中的一个bug吗?有没有一种正确的方法可以使用globroutes,并且仍然有一个404处理程序

顺便说一下,我可以创建一个用于浏览的资源,而不是将其设置为如下路径:

App.Router.map(function() {
  this.resource('browse', { path: '/browse' }, function() {
    this.route('baz', {path: '/*'});
  });
  this.route('missing', { path: '*' });
});

这仍然有同样的问题。

我认为这一定是一个bug

这是一个JSBin:

在这里,您可以看到它按照预期直接进入“缺失”路线:

以及尝试直接进入“浏览”路线失败:

谢谢!我向法院提交了一份文件。余烬开发人员正在查看它。