我设法解决这个问题。各方面的解决方案如下:
滤器
更新Handsontable的版本,以版本v1.11.0更新数据设置时,保持在其自身的过滤器。
排序
更新上面的方法如下:
$http({
method: "POST",
url: "my-data-url",
data: "my-post-data"
}).then(function(response){
// response contains the handsontable data
var json_response = response.data;
// Get sort data of handsontable prior to updating the data setting
if (isSorted(hot) == true) {
var sortData = getSortData(hot)
}
// Update the data in my table instance
hot.updateSettings({
data: json_response
})
// Re-apply previous sorts
if (sortData) {
hot.sort(sortData.sortColumn, sortData.sortOrder);
}
});
// Determines if sorts have been applied
var isSor