我在下面定义的AngularJS JS文件中有一个JS函数,我正在调用它。
在JS文件中调用此函数时,正确的语法是什么,因为我需要在网格上进行硬刷新。
viewModel.getGridData = function (ajaxUrl, searchValues)
{
$http.post(ajaxUrl, { searchCriteria: searchValues })
.success(function (data)
{
viewModel.gridOptions.data = data.kvs;
});
};
viewModel.getGridData(ajaxUrl, searchValues);
答案 0 :(得分:0)
你应该考虑制作" getGridData"使用Angular的内部$ http服务返回承诺的服务函数。此模式的好处是允许您在应用程序中的其他位置重用ajax请求并is considered by many to be a best practice。
myApp.factory('SearchService', function($http) {
return {
getGridData: function(url, valueObj) {
return $http.post(url, valueObj);
}
}
});
承诺将通过解析其内部ajax调用来解决,因此您将调用控制器中的工厂函数(不要忘记将其作为依赖项注入!)
SearchService.getGridData(url, valueObject).then(function(result) {
//you will have access to the result of the Ajax call inside this callback function only.
//Be sure to bind it for use in other places in your application!
console.log(result);
})
相关读物: