gpt4 book ai didi

javascript - AngularJS 服务取决于第二个服务的资源

转载 作者:行者123 更新时间:2023-11-28 09:08:02 26 4
gpt4 key购买 nike

也许我以错误的方式处理这个问题,我不确定,但我有两个服务,一个是用户服务,它从服务器获取有关用户的一堆详细信息,另一个是依赖于从用户服务获取一些用户详细信息,然后对服务器进行更多调用以获取其他信息。

无论如何,由于第二个服务进行调用时会发生异步操作,因此用户服务器所需的信息尚未填充。

我知道 Angular 服务可以相互依赖,但在这种情况下它不会出现?

factory('User', ['$resource', function ($resource) {
return $resource(usersUrl, {}, {
//The data model is loaded via a GET request to the app
query: {method: 'GET', params: {}, isArray: false},
putupdate: {method: 'PUT', params:{}}

});
}])
.factory('UserData', function() {
var data = {}
data.userinfo = {};

if(data = {}){
}
return {
updateinfo: function(newdata) {

data.userinfo = newdata;
// alert(data.userinfo.user)

},
userinfo: data
}
})
.factory('PlansData', ['UserData', 'User', '$rootScope', function(userData, user, $rootScope) {
var data = {}
data.plansinfo = {};
//alert(userData.data.userinfo.user.email)
if(data = {}){
}
return {
updateinfo: function(newdata) {
alert(user.query())

data.plansinfo = newdata;
},
plansinfo: data
}
}])

所以我有一个用户服务和一个缓存用户数据服务,但是如果我尝试从 PlansData 服务中的 UserData 调用任何内容,我就会得到未定义的结果。

如何让 planData 等待 UserData 获得一些数据?

谢谢

汤姆

最佳答案

我不确定你想要完成什么,但这行代码:

if(data = {}){
}

在您的两个服务中都会清除您的数据对象。您将整个数据对象设置为 {}

关于javascript - AngularJS 服务取决于第二个服务的资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16649221/

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