0

アプリの init 中に特定のリーフ リソースに移行するときに、ルーターにフックする方法を探しています。つまり、「着信」URL の状態に関係なく、アプリが読み込まれるたびに小さな init ルーチンを実行したいと考えています。

次のようなルーターがあるとします。

App.Router.map ->
  @resource "donkeys"
  @resource "camels"

アプリが次のようなダングリング URL で (初めて) ロードされた場合:

ローカルホスト:9000/#/ロバ

- また -

ローカルホスト:9000/#/camels

同じルーターレベルのコードを呼び出したい。

私の最初の推測は、次のようなことを試すことでした(これは機能しません):

App.IndexRoute = Ember.Route.extend

  activate: ->
    App.callTheBeastsOfBurden()

...しかし、IndexRoute がトラバースされていないことがわかりました。ログメッセージしか表示されないTransitioned into 'donkeys'

昔は、フックできるこの「ルートルート」の概念がありました。私が思い出すと、次のように見えました (これは古くて「間違っています」 )。

App.Router = Em.Router.extend
  root: Em.Route.extend
    connectOutlets: ->
      App.callTheBeastsOfBurden()

では、同じことを実現するRouter v2 承認済みの方法は何ですか?

4

1 に答える 1