更新了答案
我试图弄清楚如何在EmberArrayController中定义模型/内容(如果可能的话)。
已更新,以告诉您如何:
模板
<table class="table table-hover">
<thead>
<tr>
<th><a href="#" {{action "sortBy" "id"}} >Id</a></th>
<th><a href="#" {{action "sortBy" "firstName"}} >First Name</a></th>
<th><a href="#" {{action "sortBy" "lastName"}} >Last Name</a></th>
</tr>
</thead>
<tbody>
{{#each}}
<tr>
<td>#{{id}}</td>
<td>{{firstName}}</td>
<td>{{lastName}}</td>
</tr>
{{/each}}
</tbody>
// Controller.js
import Ember from 'ember';
export default Ember.ArrayController.extend({
content: Ember.A([{id: 1, firstName: 'Amanda', lastName: 'Hugnkiss'},
{id: 2, firstName: 'Ben', lastName: 'Dover'},
{id: 3, firstName: 'Ms.', lastName: 'Cleo'}])
,
actions: {
sortBy: function(property) {
//debugger;
this.set('sortProperties', [property]);
}
}
});
// Route.js
import Ember from 'ember';
export default Ember.Route.extend({
/*model: function(){
return [
{id: 1, firstName: 'Kris', lastName: 'Selden'},
{id: 2, firstName: 'Luke', lastName: 'Melia'},
{id: 3, firstName: 'Formerly Alex', lastName: 'Matchneer'}
];
}*/
});
根据下面的一些评论,这个解决方案有效,但是,模型钩子似乎不直接作为EmberArrayController上的属性或行为直接支持,但是,内容对象属性是。
如果选择此解决方案,请记住这一点。
我将暂时接受这个答案。
答案 0 :(得分:0)
如果你想设置内容(或模型),那么嗯,设置模型怎么样?
export default Ember.ArrayController.extend({
model: null,
init: function() {
this._super();
this.set('model', ['some', 'stuff']);
}
});