我很好奇是否有人试图在使用数据表的情况下实现视图?我正在通过didInsertElement加载数据和dataTable。我正在为每条记录在td中添加“编辑”和“删除”按钮,以便用户可以单击并编辑将其带到新页面或删除记录的记录。目前通过在模型中添加HTML并将事件发送到控制器来完成此操作。随着我对Ember的理解越来越多,我认为更好的方法是将包含“编辑”和“删除”的列作为触发的单个视图。
以前有人这样做过吗?在模板中实现它的问题是,每次应用程序加载时,可能存在未知数量的列,具体取决于我从中提取的API挂钩。
答案 0 :(得分:-2)
这应该让你接近。假设您知道要使用第0列和第1列的视图,并让其他所有内容正常呈现。基本上,在数据表def中,您需要将后处理添加到行渲染以连接视图/模板。这是一个利用jQuery来找到合适列的示例(我的EmberJS有点原始,但我相信你可以得到要点):
"fnRowCallback": function( nRow, aData, iDisplayIndex, iDisplayIndexFull){
var myView0 = Ember.View.create({ <view def goes here> })
var myView1 = Ember.View.create({ <view def goes here> })
myView0.appendTo($("td:eq(0)", nRow));
myView1.appendTo($("td:eq(1)", nRow));
return nRow;
}
请注意,您需要注意性能。如果您一次显示数百/数千行,并且您正在每个行上单独监听事件,那么您可以支付性能损失,这仅取决于您的布局方式。