我学习AngularJS并试图建立前端系统,从WordPress的获取数据。jQuery的Ajax请求的作品,同AngularJS Ajax请求不
在后端侧似乎一切都正确设置,当我使用jQuery Ajax请求它获得的数据没有问题。
jQuery.ajax({
type: 'POST',
url: '/wp-admin/admin-ajax.php',
data: {
action: 'getdataajax'
},
success: function(data, textStatus, XMLHttpRequest){
console.log(data);
},
error: function(MLHttpRequest, textStatus, errorThrown){
console.log(errorThrown);
}
});
但是,当我尝试用AngularJS做同样的事情时,它不起作用。我试图复制代码为Ajax请求如下:
myApp.factory('productsData', function($http, $log) {
return {
getProducts: function(successcb) {
return $http({
method: 'POST',
url: '/wp-admin/admin-ajax.php',
data: {action: 'getdataajax'}
}).success(function(data, status, headers, config) {
successcb(data);
$log.info(data, status, headers(), config)
}).error(function(data, status, headers, config) {
$log.warn(data, status, headers(), config)
});
},
};
});
如果我登录,它输出为0。我在想什么?
感谢您的帮助。
P.S.控制器看起来是这样的:
myApp.controller('ProductsController', function ProductsController($scope, productsData) {
$scope.sortorder = 'name';
// $scope.products = productsData.products;
// $scope.products = productsData.getProducts();
productsData.getProducts(function(products){
$scope.products = products;
});
});
你是如何在你的控制器 使用呢? – tymeJV
更新了帖子。我尝试过不同的方式。评论也是如此。它们都不起作用。对不起 – Pavel
将它添加到问题中,在评论中粘贴代码相当难看。 – tymeJV