获取休息请求的结果而不是响应?
Get result of rest request instead of response?
我的控制器中有以下功能。
RestRequestsSrvc.getUserDetail()
.then(
function (response) {
$scope.user.userDetail = response;
},
function (error) {
// TODO
});
如果我输入
console.log(RestRequestsSrvc.getUserDetail());
控制台记录一个承诺。我想为响应设置一个变量。我怎样才能修改我的代码,以便我得到响应而不是承诺?
您可以将 console.log 放入 promise 中。然后
RestRequestsSrvc.getUserDetail()
.then(
function (response) {
$scope.user.userDetail = response;
console.log(response);
},
function (error) {
// TODO
});
事情是当你调用函数时它会被执行但不会等待结果,这就是你得到承诺的原因。一旦请求执行完毕,.then 就会被调用。这就是您处理成功或错误回调的地方。
Return 一个承诺,因为你的请求是异步的。
您应该等待回复,
将 console.log 放入回调函数中应该会打印您的信息。
RestRequestsSrvc.getUserDetail()
.then(
function (response) {
$scope.user.userDetail = response;
console.log(response);
},
function (error) {
// TODO
});
对服务器的请求是异步的,这意味着您必须在回调中处理响应。
您可以使用 async false 标志,但如果您有稍后在代码中执行的独立模块,则不推荐这样做。
我的控制器中有以下功能。
RestRequestsSrvc.getUserDetail()
.then(
function (response) {
$scope.user.userDetail = response;
},
function (error) {
// TODO
});
如果我输入
console.log(RestRequestsSrvc.getUserDetail());
控制台记录一个承诺。我想为响应设置一个变量。我怎样才能修改我的代码,以便我得到响应而不是承诺?
您可以将 console.log 放入 promise 中。然后
RestRequestsSrvc.getUserDetail()
.then(
function (response) {
$scope.user.userDetail = response;
console.log(response);
},
function (error) {
// TODO
});
事情是当你调用函数时它会被执行但不会等待结果,这就是你得到承诺的原因。一旦请求执行完毕,.then 就会被调用。这就是您处理成功或错误回调的地方。
Return 一个承诺,因为你的请求是异步的。
您应该等待回复,
将 console.log 放入回调函数中应该会打印您的信息。
RestRequestsSrvc.getUserDetail()
.then(
function (response) {
$scope.user.userDetail = response;
console.log(response);
},
function (error) {
// TODO
});
对服务器的请求是异步的,这意味着您必须在回调中处理响应。
您可以使用 async false 标志,但如果您有稍后在代码中执行的独立模块,则不推荐这样做。