我在stackoverflow中新来了。
我的代码有问题,我找不到解决方案,所以我决定在这里提问。
HTML
<body ng-app="app">
<div ng-controller="ctrl">
</div>
<script src="~/Scripts/angular.min.js"></script>
我包含了ng-app =&#34; app&#34;在我的身体里,我也安装了angularjs。
我在我的应用程序中添加了一个名为ang.js
的javascript文件ang.js
var app = angular.module('app', [])
app.controller("ctrl", function ($http) {
$http.get("url1")
.success(function (response){
console.log(response);
})
$http.get("url2", {
params: {
Id: response[0].key
}
.success(function (response2) {
console.log(response2);
})
})
})
我的问题在
.success(function (response){
console.log(response);
})
如何在第二个中调用此参数响应。
$http.get("url2", {
params: {
Id: response
}
答案 0 :(得分:1)
您需要在第一个成功处理程序中发出第二个请求,即
var promise = $http.get('url1').then(function(res1) {
return $http.get('url2', {
params: {
Id: res1.data[0].key
}
}).then(function(res2) {
console.log(res2.data);
return res2.data;
})
});
请注意,我已使用then
而非deprecated success
回调。