Ember.js の「controller.controllers」とは何ですか?
のようだ
this.getPath("controller.controllers")
ビューで App.router を返します。それは非常に便利ですが、私が何をしているのか理解したいです:-)
Ember.js の「controller.controllers」とは何ですか?
のようだ
this.getPath("controller.controllers")
ビューで App.router を返します。それは非常に便利ですが、私が何をしているのか理解したいです:-)
で呼び出すinitialize
とEmber.Application
、すべてのコントローラがインスタンス化され、ルータに設定されます。コントローラーは、ここで実装されているように、注入されたいくつかのプロパティも取得します。ご覧のとおり、controllers
プロパティはルーターへの参照です。
Ember.Application.registerInjection({
name: 'controllers',
injection: function(app, router, property) {
if (!/^[A-Z].*Controller$/.test(property)) { return; }
var name = property.charAt(0).toLowerCase() + property.substr(1),
controller = app[property].create();
router.set(name, controller);
controller.setProperties({
target: router,
controllers: router,
namespace: app
});
}
});