我很想知道关于新的 ember 路由和控制器,哪一层的逻辑是什么:
如果我们以下面的路线为例:
step1: Ember.Route.extend
route: '/step1'
connectOutlets: (router, event) ->
exercise = WZ.Exercise.createRecord()
router.get('exercisesNewStep1Controller').set 'groups', WZ.store.find(WZ.Group)
router.get('exercisesNewController').connectOutlet 'step', 'exercisesNewStep1', exercise
我的 ExercisesNewStep1Controller 目前是无逻辑的:
WZ.ExercisesNewStep1Controller = Em.Controller.extend()
建议的建议似乎是让路由只负责将正确的插座分配给正确的控制器,并使用控制器中的任何其他逻辑。
我应该将我的控制器重构为如下所示:
WZ.ExercisesNewStep1Controller = Em.Controller.extend
createGroup: ->
@set 'groups', WZ.store.find(WZ.Group)
这是一个非常简单的例子,但我认为逻辑成立。
我有点困惑所有图层的位置。我认为必须创建所有这些 xxxController、xxxView 文件并在它们之间进行耦合会产生少量开销。
我喜欢 ember,但我只想提出这一点。