KnockoutJS和AG-Grid示例

时间:2017-09-03 13:31:43

标签: knockout.js ag-grid

我一直在努力了解ag-grid和淘汰赛的结合方式。

我搜索了很多但却找不到最好的例子。因此,请在此处提出问题是否有knockout jsAG-Grid

的可用文档

我创建了示例,但它不适用于Observable rowDataJSFiddle

1 个答案:

答案 0 :(得分:1)

我不知道有关与Knockout JS集成的任何官方文档,但是这里有解决添加新行问题的方法。

基本上,当您向this.rowData可观察对象添加新行时,它不一定会被推入网格中。因此,您需要调用gridOptions.api.setRowData以便更新网格以显示新数据集。这是documentationfiddle。这是更新的https://jsfiddle.net/2dcd0arj/6/

this.addRow = function() {
   this.rowData.push({
      make: "Toyota",
      model: "Celica",
      price: 35000
   });

   self.gridOptions().api.setRowData(self.rowData());
}

如果您想稍微改进一下,可以订阅this.rowData上的更改,并通过订阅事件处理程序调用{​​{1}}。像这样:

gridOptions.api.setRowData

这是基于订阅事件的逻辑的更新小提琴:update API

更新

我刚刚意识到这也有updated fiddle。它允许您添加/更新/删除行,而无需再次设置数据集。基本上,您需要提供要添加到self.rowData.subscribe(function(newValue){ self.gridOptions().api.setRowData(newValue); }); 函数的新行的对象。以下是您需要更新gridOptions.api.updateRowData功能的方法。这是指向create a component的链接。

addRow

您可以更进一步,binding handlerhttp://jsfiddle.net/bxg57pav/