我學習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