私のユースケースはとてもシンプルです。ユーザーは、セルを編集した後 (enableCellEdit: true)、データを「自動的に」サーバーに送信する必要があります (セルのぼかしで)。さまざまなアプローチを試みましたが、適切に機能するものはありませんでした。私は最小限のグリッドを持っています:
// Configure ng-grid
$scope.gridOptions = {
data: 'questions',
enableCellSelection: true,
selectedItems: $scope.selectedRow,
multiSelect: false,
columnDefs: [
{field: 'id', displayName: 'Id'},
{field: 'name', displayName: 'Name'},
{field: 'answers[1].valuePercent', displayName: 'Rural', enableCellEdit: true}
]
};
たとえば、グリッドに渡されるデータ モデルを監視しようとしました。しかし、そうしても編集されたセルは返されません:
$scope.$watch('myData', function (foo) {
// myModel.$update()
}, true);
「ngGridEventData」データイベントをいじろうとしましたが、セル編集後に起動しません
$scope.$on('ngGridEventData', function (e, gridId) {
// myModel.$update()
});
最後にCellを観察してみました。ただし、これはグリッドの「selectedCell」プロパティによって行に対してのみ機能します。
$scope.selectedRow = [];
$scope.gridOptions = {
selectedItems: $scope.selectedRow,
}
$scope.$watch('selectedRow', function (foo) {
console.log(foo)
}, true);
ng-grid プラグインが必要ですか? すぐに使えるものではないなんて信じられません。
自動保存/サーバーへの送信を解決する方法のポインター/スニペットを教えてください。