新しいルーターAPI( commit 6a165ad )を使用しようとしていますが、いくつか問題があります。
このルーターを考えると:
Router.map(function(match) {
match("/posts").to("posts", function(match) {
match("/new").to('new', function(match) {
match("/author").to('author');
});
});
});
new
ルートに移行しようとしています。
new.indexの使用: this.transitionTo('new.index')
それは機能しますが、ご覧のとおり、ルート名は実際には明示的ではありません(新しい投稿用であるかどうかさえわかりません)。したがって、それは実行可能な解決策ではありません。
posts.newの使用: this.transitionTo('posts.new')
私はそれが機能することを望みましたが、エラーがスローされます:
ルート
posts.new
が見つかりませんでした。
インデックスへの移行は自動的に行われると思いましたが、そうではないようです。
カスタマイズされたルート名の使用:
上記で指定されたコミット以降、Emberではカスタムルートの命名が可能です。以前の試みが機能しないため、new
ルートを強制的に実行しようとしましposts.new
たが、それでも機能しません(そうであった場合は理想的ですfoo.new
)。
ルートがネストされているカスタマイズされたルートに移動することはできないようです。
TL; DR
new
ルートに移行したい(そして指定したいposts
)。それはどのように行われるべきですか?- ルーターv2.1より前は、子がない
to
(つまりmatch("/posts", function(match) { ... })
)ルートがありましたが、まだ機能していますか?もしそうなら、その子供たちの名前は何ですか?