gpt4 book ai didi

angularjs - 无法从 angular.factory 返回 obj

转载 作者:行者123 更新时间:2023-12-02 23:26:57 25 4
gpt4 key购买 nike

这是我的工厂服务。

(function() {
var appfactory = angular.module("RoyalApp");
appfactory.factory('packService', packService);

packService.$inject = ['varsService', '$http'];

function packService(varsService, $http) {

var packages = {

getPackages: function() {
$http({
method: "GET",
url: "http://localhost:63666/api/Package?customer_id=" + varsService.dataObj._id
}).then(function mySuccess(response) {
return response.data;
}, function myError(response) {

});
}
}
return packages;
}
})();

在我的 Controller 中,我用它来将它们存储在 Controller 范围内

var vm = this;
vm.packages = packService.packages.getPackages;

也尝试过这个

vm.packages = packService.packages.getPackages();

我在 Chrome 控制台中没有错误,并且我的 http 响应是正确的。我根本无法返回响应。

最佳答案

应该是:

packService.getPackages().then(function(packages) {
vm.packages = packages;
});

请注意,getPackages 必须返回 Promise:

getPackages: function() {
return $http({
method: "GET",
url: "http://localhost:63666/api/Package?customer_id=" + varsService.dataObj._id
}).then(function mySuccess(response) {
return response.data;
}, function myError(response) {

});
}

一些注释。 packService 的公共(public) API 包含单个方法 getPackages - 这是您需要调用的方法。然后它返回一个 Promise 对象,您可以使用它来提供在加载数据时调用的回调(使用 then 方法)。

关于angularjs - 无法从 angular.factory 返回 obj,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37895276/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com