Search code examples
angularjshandsontable

Access handsontable methods/properties using nghandsontable


I'm using ngHandsontable Angular directive for Handsontable. I managed to show the data successfully, but I'm struggling with getting access to the modified rows so I can send the data to the DB.
I tried binding the afterChange callback, but the index seems to be off after column sorting. (shows the index of the row shown on the table, not in the dataSource)

I wonder what's the best practice to save ngHandsontable data or what I should do to access the API like getData method or columnSorting property

Thanks a lot for your help! - Marco


Solution

  • I ended up using afterInit event to get the instance and then call the methods in further events like the afterChange.

    This is how my code looks like:

    afterInit: function() {
            $scope.hot.instance = this;
        }
    

    and then:

    afterChange: function (changes, source) {
            if (source != 'loadData') {          
                var hot = $scope.hot.instance;
                var dataRow = hot.getSourceDataAtRow(index)
                // .... saveChanges...
            };
        }
    

    Thanks a lot to Bricktop for giving me the hint.