更新
你终于决定是时候在 SO 上发帖了,你这样做了,然后你发现了一个愚蠢的错误。已搞定。->
从中删除Ember.Table.HeaderCell.extend ->
。
我正在尝试使用#183中的示例自定义我的标题单元格以进行排序。不幸的是,我传递给 headerCellViewClass 的模板没有被渲染。
我添加了一个随机类和“asdf”,只是为了向自己证明我的布尔值不是问题。我可以通过控制台访问出headerCellName、sorted和supportSort,它们都有自己的期望值。
在我的控制器中循环创建的列
Ember.Table.ColumnDefinition.create App.SortableColumnMixin, {
columnWidth: 100
textAlign: 'text-align-left'
tableCellViewClass: 'App.ReportValueCell'
headerCellName: columnName
contentPath: columnName
isSortable: yes
}
你会注意到这里我设置了一个自定义的 tableCellViewClass。那一个功能完美。
可排序列混合
App.SortableColumnMixin = Ember.Object.create(
supportSort: true
sorted: false
headerCellViewClass: 'App.SortableHeaderCell'
)
App.SortableHeaderCell
App.SortableHeaderCell = Ember.Table.HeaderCell.extend ->
templateName: 'table/sortable-header-cell'
table/sortable-header-cell.hbs
<div class="ember-table-content-container" {{action sortByColumn view.content}}>
<span class="ember-table-content" class="21340987235">
asdf
{{view.content.headerCellName}}
{{#if view.content.supportSort}}
<div style="float:right;">
{{#if view.content.sorted}}
{{#if sortAscending}}
<div style="cursor:s-resize;" title="Ascending">
↑
</div>
{{else}}
<div style="cursor:n-resize;" title="Descending">
↓
</div>
{{/if}}
{{else}}
⇅
{{/if}}
</div>
{{/if}}
</span>
</div>
督察
有谁比我更清楚为什么会这样?