gpt4 book ai didi

javascript - Angular JS $http promise 的行为是否像真正的 $q promise 一样?

转载 作者:行者123 更新时间:2023-11-29 22:09:49 24 4
gpt4 key购买 nike

我知道 Angular 可以处理来自 Controller 内部的 promise 。例如:

function MyCtrl($scope) {
$scope.myvar = getDeferredPromise();
}

主要的 Angular 摘要循环优雅地处理了这个问题,将延迟函数最终返回的任何值分配给 myvar

但是,虽然 $http.get() 方法返回一个 promise ,但我无法以这种方式让它工作。例如:

function MyCtrl($scope, $http) {
$scope.myvar = $http.get('/url');
}

get 方法返回的“promise”有一个success 方法,该方法采用一个函数,该函数分配了人们希望分配给 myvar< 的数据/strong>.

然而,它也有一个then 方法 - 但它给出了整个响应对象 - 而不仅仅是数据部分!这似乎最终被分配给了 myvar!

这个 fiddle 可能有帮助:http://jsfiddle.net/QKnNC/1/

我是不是做错了什么?或者这是某种“设计使然”?

最佳答案

ng.$http

The $http service is a function which takes a single argument — a configuration object — that is used to generate an HTTP request and returns a promise with two $http specific methods: success and error.

$http 返回一个 promise ,因此您需要链接 then 以获取数据。

IPService.getV1().then(function (response) {
console.log(response)
$scope.value1 = response.data;
});

关于javascript - Angular JS $http promise 的行为是否像真正的 $q promise 一样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18660128/

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