84669 orang belajar
152542 orang belajar
20005 orang belajar
5487 orang belajar
7821 orang belajar
359900 orang belajar
3350 orang belajar
180660 orang belajar
48569 orang belajar
18603 orang belajar
40936 orang belajar
1549 orang belajar
1183 orang belajar
32909 orang belajar
首先点击第一个按钮通过http.get方法获取到一个值,并且已经能获取到。这个值要怎么给到第二个按钮的function中去。按钮顺序是先输入前三个条件点击第一个按钮,从后台拿到数据。再把这个数据拼接到第二个按钮按下所用的http.post方法的url中去,请问,这样能实现吗?
能实现
$scope.getValue1=function () { $http({ method: 'GET', url: '/someUrl' }).then(function successCallback(response) { $scope.valueOne=response.data; }, function errorCallback(response) { }); }; $scope.getValue2=function () { if($scope.valueOne){ $http({ method: 'GET', url: '/someUrl2?valueOne='+$scope.valueOne }).then(function successCallback(response) { $scope.valueTwo=response.data; }, function errorCallback(response) { }); }else{ alert("please click button one first.") } };
Http.get请求到的数据存到一个全局对象里保存,http.post再调用对象,success方法中销毁对象即可
其实就是闭包的原理..在设置两个按钮事件处理的相同作用域中定义一个变量temp, 把第一个按钮事件处理的回调函数中get获取到的值赋值给变量temp, 然后在第二个按钮事件处理的回调函数中取得temp值post出去..
如果两个异步请求之间有数据依赖的话,建议用promise处理,防止点击第二次按钮时,第一次请求的数据还没返回
能实现
其实就是闭包的原理..
在设置两个按钮事件处理的相同作用域中定义一个变量temp, 把第一个按钮事件处理的回调函数中get获取到的值赋值给变量temp, 然后在第二个按钮事件处理的回调函数中取得temp值post出去..
如果两个异步请求之间有数据依赖的话,建议用promise处理,防止点击第二次按钮时,第一次请求的数据还没返回