template
またはpartial
ビュー データを含むようにするにはどうすればよいですか? Ember、ハンドルバー、requireJS を使用しています。outlets
現在、ビューデータのみが含まれていることがわかりました。テンプレートにモデルのプロパティを表示しようとしています。具体的には、モデルのnumberFive
プロパティをに表示しようとしています。ページの URL に関係なく、同じページのさまざまなビューからテンプレートを表示したいので、アウトレットでの使用は理想的ではありません。GraphData
graphHolderTemplate
アプリケーション ビュー:
define(['ember', 'text!templates/applicationTemplate.html'],
function(Em, applicationTemplate) {
var ApplicationView = Em.View.extend({
// warning: template doesn't work here, even though defaultTemplate does.
defaultTemplate: Em.Handlebars.compile(applicationTemplate),
});
return ApplicationView;
});
アプリケーション テンプレート:
<h1>{{#linkTo 'graph'}}Graph{{/linkTo}}</h1>
<h2>{{#linkTo 'graphHolder'}}Graph Holder{{/linkTo}}</h2>
<h4>outlet</h4>
{{outlet}}
<h4>template graphHolder</h4>
{{template graphHolder}}
<h4>partial graphHolder</h4>
{{partial 'graphHolder'}}
グラフホルダーテンプレート:
<h3>This is the graphHolder</h3>
<p>view.graphData.numberFive is: {{view.graphData.numberFive}}</p>
グラフホルダービュー:
define([ 'text!templates/graphHolderTemplate.html',
'controllers/GraphController',
'models/GraphData',
'ember',
], function(graphHolderTemplate, GraphController, GraphData, Em) {
// This is all that sets the template. hmmm
Em.TEMPLATES['graphHolder'] = Em.Handlebars.compile(graphHolderTemplate);
var graphData = GraphData.create();
console.log("graphData.numberFive is ": graphData.numberFive);
var GraphHolderView = Em.View.extend({
controller: GraphController,
classNames: ['hero-unit'],
graphData: GraphData.create(),
});
return GraphHolderView;
});