DataTables,Ember.js和视图里面的

时间:2013-11-25 16:23:30

标签: javascript ember.js datatables jquery-datatables

我很好奇是否有人试图在使用数据表的情况下实现视图?我正在通过didInsertElement加载数据和dataTable。我正在为每条记录在td中添加“编辑”和“删除”按钮,以便用户可以单击并编辑将其带到新页面或删除记录的记录。目前通过在模型中添加HTML并将事件发送到控制器来完成此操作。随着我对Ember的理解越来越多,我认为更好的方法是将包含“编辑”和“删除”的列作为触发的单个视图。

以前有人这样做过吗?在模板中实现它的问题是,每次应用程序加载时,可能存在未知数量的列,具体取决于我从中提取的API挂钩。

1 个答案:

答案 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;
}

请注意,您需要注意性能。如果您一次显示数百/数千行,并且您正在每个行上单独监听事件,那么您可以支付性能损失,这仅取决于您的布局方式。