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 回答