1

たとえば、次のとおりです。

Ember.Model.reopen({
  show: Ember.observer( function(){
    var target = this.get( 'showPath' ),
        waypoint = Ember.Route.transitionTo( 'root' ),
        destination = Ember.Route.transitionTo( target ),
        router = App.get( 'router' );

    waypoint( router );
    destination( router, this );
  })
});

App.Post.reopen({
  showPath: 'posts.show'
});

ここでは、最初にルートで停止して、現在の状態から宛先に遷移するモデルの show メソッドを定義しました。

これにより、オブジェクトを表示するという単純なタスクに関連するコードが非常に簡単になることがわかりました。

App.Post.find(1).show();

これが役に立つかどうかはさておき、モデル クラスとルーターのかなりあからさまな結合があることが問題です。

私の質問は...

これは心配する必要がありますか?

4

1 に答える 1

3

私の本能は、これは間違っているということです。Ember アプリケーションの依存関係グラフについて考えると、ルーターがモデルに依存することは明らかであり、モデルがルーターに依存しない方がよいことは明らかです。

于 2012-12-13T12:13:25.907 に答える