【发布时间】:2017-05-06 14:38:01
【问题描述】:
我编写代码时甚至不知道什么是异步 - 这是在项目开始时我刚接触整个编程的时候。
现在,我当然明白它们是什么了。但是,我无法理解 Promises。我有一个 /session 异步调用,当我调用它时,会向我传递一些配置文件变量,但如何完成它,我不知道。我已经按照教程学习并迷失了方向。
有人能指出这应该如何一劳永逸地写吗?我将永远感激:
var getProfileID = function(){
$http.get('/session')
.then(function(res){
return res.data.profileId;
});
};
getProfileID()
.then(function(res) {
$scope.profileID = res;
});
这对我来说看起来很错误,但我对 Promise 毫无头绪,不知道从哪里开始。
PS:我使用的是 Angular 1.6.4 并注入了 $q
提前致谢!
【问题讨论】:
-
return $http.get....看来您的问题不在于 Promises,而在于了解如何从函数返回值(在这种情况下,该值是 Promise) -
你能详细说明一下吗?确实,到目前为止,我在代码中的任何地方都避免了 return,因为我不需要它。
-
您需要您的函数返回一个 Promise 才能使用该 Promise - 就目前而言,您的函数返回
undefined,因为没有返回语句等同于 @987654325 @ - 我很惊讶你避免在任何地方使用 return - 你的函数一定很有趣 -
请确保您debug your code:有关无法再重现或由简单的印刷错误引起的问题的问题
标签: javascript angularjs promise q