我是否必须为每个Ember.js应用程序显式创建`ApplicationView`和`ApplicationController`?

Ara*_*ras 1 ember.js

Trek的教程:

您的应用程序必须具有ApplicationView属性.将为您创建此类的实例,并将其作为根视图插入到应用程序的视图层次结构中.

本教程给出了这个示例代码:

App.ApplicationView = Ember.View.extend({
  templateName: 'application'
});

App.ApplicationController = Ember.Controller.extend();
Run Code Online (Sandbox Code Playgroud)

有什么特殊的ApplicationViewApplicationController?它们的特定名称是保留的,必须通过转换使用,或者路由器引用它们的方式有什么特别之处吗?

据我了解,Ember的一个原则是消除样板代码.所以我猜测还有更多东西可以为每个应用程序明确创建这两个视图作为起点 - 否则Ember会在幕后为我制作它们.

重温我的问题,Ember应用程序的成就ApplicationViewApplicationController特殊之处.我是否需要为每个应用程序显式创建它们?如果是,我是否需要按照约定命名它们?

注意:我正在使用ember-latest

gre*_*reg 5

Ember.js试图遵循约定优于配置的编程理念.因此,有些事情需要特别命名并遵循正确的套管规则.在调用App.initialize()您的应用程序时,查找该属性App.ApplicationView.您的应用程序然后呈现此视图,将其插入到dom中并自动创建一个实例App.ApplicationController,将其设置为您的渲染上下文ApplicationView.这意味着您ApplictationController可以ApplicationView通过在视图中引用它们来绑定您的任何属性.

如果调用App.initialize()与出App.ApplicationViewApp.ApplicationController余烬将抛出一个错误,让你知道你必须创建.

ApplicationView并且ApplicationController是您的余烬应用程序的组成部分,必须存在.Ember是一个MVC框架,ApplicationView是你的根V,ApplicationController是你的根C.可能很容易尝试使用像ember这样的框架来获得你想要的部分,但只需要更多的工作你就会更健壮,以及易于使用的应用程序,试图挑选功能.