0

次のコードのように定義されたルート マネージャーがあります。

App.routeManager = Ember.RouteManager.create();

ビューステートをマネージャーに静的に追加したくありません。ロード時にどのような状態がデータに依存するかを判断したいと考えています。どうやってやるの?次のコードのようなものを探しています。

foreach(item in itemArray){
      App.routeManager.states.add(Ember.ViewState.create(
             route: 'item.route'
      ));
}

出来ますか?

4

1 に答える 1

1

あなたは基本的に自分で答えを出しました.http: //jsfiddle.net/pangratz666/xNnTP/を見てください:

App.stateManager = Ember.StateManager.create({
    enableLogging: true,
    initialState: 'firstState',
    firstState: Ember.State.create({
        myEvent: function(manager) {
            manager.goToState('addedState');
        }
    })
});

Ember.run.later(function() {
    Ember.setPath(App.stateManager, 'states.addedState', Ember.State.create({
        enter: function() {
            this._super();
            console.log('hello dynamic world');
        }
    }));
    App.stateManager.send('myEvent');
}, 10);​
于 2012-04-30T14:20:20.783 に答える