Javascript 使用管线在EmberJS中渲染视图
你可以从我的问题中看出,我正在慢慢地学习。我读过《伟大的路线指南》,我觉得自己已经准备好面对世界了,但是 在我的示例中,我认为{somethingView}}将被呈现,而不是控制器属性{{somethingCtrl}。这是正确的行为吗?如果是这样,您将如何从Ember.View呈现属性 JSJavascript 使用管线在EmberJS中渲染视图,javascript,ember.js,Javascript,Ember.js,你可以从我的问题中看出,我正在慢慢地学习。我读过《伟大的路线指南》,我觉得自己已经准备好面对世界了,但是 在我的示例中,我认为{somethingView}}将被呈现,而不是控制器属性{{somethingCtrl}。这是正确的行为吗?如果是这样,您将如何从Ember.View呈现属性 JS window.App = Ember.Application.create({ ready: function() { this.initialize(); } });
window.App = Ember.Application.create({
ready: function() {
this.initialize();
}
});
window.App.Router = Ember.Router.extend({
root: Ember.Route.extend({
index: Ember.Route.extend({
route: '/',
connectOutlets: function(router) {
var controller = router.get('applicationController');
controller.connectOutlet('garments');
}
})
})
})
window.App.ApplicationView = Ember.View.extend({
templateName: 'application',
});
window.App.ApplicationController = Ember.Controller.extend();
window.App.GarmentsController = Ember.Controller.extend({
somethingCtrl: "Something in the controller"
});
window.App.GarmentsView = Ember.View.extend({
templateName: 'garments',
somethingView: "Something in the view"
});
DOM内容
<script type="text/x-handlebars" data-template-name="application">
<h1>Hi Ember</h1>
{{outlet}}
</script>
<script type="text/x-handlebars" data-template-name="garments">
<h1>Garments</h1>
{{somethingView}}<br>
{{somethingCtrl}}
</script>
嗨,恩伯
{{outlet}}
服装
{{somethingView}}
{{somethingCtrl}
这种行为是正确的。以下是我对余烬核心概念的理解:
- 模型:这些对象表示应用程序处理的日期。这些是构成应用程序域模型的业务对象
- 控制器:控制器负责提供对模型的访问。控制器具有属性内容,应该在其中注入模型(Ember.Controller的单个对象和Ember.ArrayController的对象数组)。控制器将此内容传递给您的视图。控制器是视图的默认上下文因此您描述的行为是预期的。
- 视图:该视图仅用于显示问题。我个人主要使用它来制作jQuery动画李>
服装
{{view.somethingView}}
{{somethingCtrl}
但要清楚:最常见的情况应该是从控制器访问内容。不应该经常访问视图的变量。您希望在应用程序中显示日期,并且此日期位于模型中,因此应通过控制器访问。最可能的情况是,您希望在视图中存储标签或类似的内容(必须计算的标签)。此行为是正确的。以下是我对余烬核心概念的理解:
- 模型:这些对象表示应用程序处理的日期。这些是构成应用程序域模型的业务对象
- 控制器:控制器负责提供对模型的访问。控制器具有属性内容,应该在其中注入模型(Ember.Controller的单个对象和Ember.ArrayController的对象数组)。控制器将此内容传递给您的视图。控制器是视图的默认上下文因此您描述的行为是预期的。
- 视图:该视图仅用于显示问题。我个人主要使用它来制作jQuery动画李>
服装
{{view.somethingView}}
{{somethingCtrl}
但要清楚:最常见的情况应该是从控制器访问内容。不应该经常访问视图的变量。您希望在应用程序中显示日期,并且此日期位于模型中,因此应通过控制器访问。最可能的情况是,您希望在视图中存储标签或类似的内容(必须计算的标签)
<script type="text/x-handlebars" data-template-name="garments">
<h1>Garments</h1>
{{view.somethingView}}<br>
{{somethingCtrl}}
</script>