如何在Ag-grid中进行双向绑定
How to do two-way binding in Ag-grid
是否可以在纯 Javascript 中进行双向绑定?
我正在尝试在 ag-grid 中进行双向数据绑定,目前,我只通过复选框显示数据,没有绑定:
columnDefs: [
{headerName: "HeaderA",field: "fieldA", width: 150, editable: true,
cellRenderer: params => {
return `<input type='checkbox' ${params.value == 'Y' ? 'checked' : ''} />`
}
}
]
我想为此复选框执行双向数据绑定,以便通过选中该复选框,我也可以更改单元格值。
目前,我的网格表现与这个 plunker 非常相似:https://plnkr.co/edit/cV5wFLY4nnyQgVIcnGrF?p=preview
[您可以单击复选框,但如果您双击单元格本身以查看单元格值,您将看到单元格值没有改变]
我将不胜感激 help/advice!
编辑:问题不再引用 AngularJS,但这个答案仍然引用。
是的,这是可能的。 AngularJS 使用 vanilla Javascript 来实现双向绑定,因此我们不必这样做。
但是,如果您正在使用 AngularJS 框架,那么您可能应该使用它已经提供的工具。
如果您想在不使用内置指令的情况下执行绑定,例如ng-model
、ng-bind
和{{}}
,考虑$scope.$watch
和$scope.$watchCollection
,这些AngularJS方法就是内置的AngularJS指令用于设置绑定。
如果您使用组件,请使用 $onChanges
或 $doCheck
。
是否可以在纯 Javascript 中进行双向绑定?
我正在尝试在 ag-grid 中进行双向数据绑定,目前,我只通过复选框显示数据,没有绑定:
columnDefs: [
{headerName: "HeaderA",field: "fieldA", width: 150, editable: true,
cellRenderer: params => {
return `<input type='checkbox' ${params.value == 'Y' ? 'checked' : ''} />`
}
}
]
我想为此复选框执行双向数据绑定,以便通过选中该复选框,我也可以更改单元格值。
目前,我的网格表现与这个 plunker 非常相似:https://plnkr.co/edit/cV5wFLY4nnyQgVIcnGrF?p=preview
[您可以单击复选框,但如果您双击单元格本身以查看单元格值,您将看到单元格值没有改变]
我将不胜感激 help/advice!
编辑:问题不再引用 AngularJS,但这个答案仍然引用。
是的,这是可能的。 AngularJS 使用 vanilla Javascript 来实现双向绑定,因此我们不必这样做。
但是,如果您正在使用 AngularJS 框架,那么您可能应该使用它已经提供的工具。
如果您想在不使用内置指令的情况下执行绑定,例如ng-model
、ng-bind
和{{}}
,考虑$scope.$watch
和$scope.$watchCollection
,这些AngularJS方法就是内置的AngularJS指令用于设置绑定。
如果您使用组件,请使用 $onChanges
或 $doCheck
。