我正在调用$ http.get从服务器获取角度ui网格的新内容。在datepicker中更改日期时,我触发ng-change事件以进行另一次http调用以获取新内容。调用成功但网格未使用新内容更新。$ scope.grid.core.notifyDataChange()在http成功回调中调用时抛出错误。请建议使用新内容更新网格的方法。
请找到plnkr代码。当我单击加载按钮时,我想使用http调用更新网格与新的JSON数据,但它不是更新网格。 http://plnkr.co/edit/S2A3scEoO6QIGFbru3Lr?p=preview
答案 0 :(得分:1)
您的示例的问题在于$http
的{{1}}方法(第256-260行)。
success
您只是将数据放在范围属性($http.get(...).success(
function(data){
$scope.roData = data;
});
)中,但是您没有对该范围属性执行任何操作。
此外,您尝试使用以下行向$scope.roData
分配错误的值:
uiGrid.gridOptions.data
但你犯了两个错误:
将变量视为字符串,这不起作用。在您的JS文件中,您需要使用if($scope.gridOptions.data ==='rData'){
$scope.gridOptions.data = 'roData';
}
访问您的范围,而不是将其名称用作$scope.nameOfVariable
之类的字符串。
您将这些行放在'nameOfVariable'
方法之外,以便在实际获取数据之前执行这些行。
我设法编辑你的plunker并让它工作,你可以找到它here。
我做的是把你的线放在一起并修复名称错误。我没有把success
放在那里,因为我不知道你想要完成什么逻辑。
if