我有一个app模块和app控制器。当我尝试使用单个获取请求时,结果显示但是当我尝试再做一次获取请求时,我想有一个问题。
var app = angular.module('bizapp', []);
app.controller('landcont', function($location, $scope, $http, $window){
$scope.user = $location.search().username;
**//This one works. result comes.**
$http({
method : "GET",
url : "webapi/company/apps"
}).then(function mySucces(response) {
$scope.records= response.data;
}, function myError(response) {
$scope.apps= response.statusText;
});
$scope.redir=function(event){
**//This one doesnot work. no result comes.**
$http({
method : "GET",
url : "webapi/login/usermap"
}).then(function mySuccesss(res) {
alert(res);
}
var uri= 'http://localhost:8080/bizlms/bizint.php?app='+event.target.id;//+encodeURIComponent(query);
$window.open(uri, "_self");
}`
有人可以帮忙吗?
答案 0 :(得分:0)
当您的控制器定义时,您的第一个ints.scan(0)(_ + _).tail
调用会运行。第二个是在一个函数内。仅在$ scope上定义函数$http
并不意味着它已被执行。在您的模板中,您可以使用。
redir
答案 1 :(得分:0)
在第二个)
承诺$http
函数调用中添加结束then
括号:
$http({
method : "GET",
url : "webapi/login/usermap"
})
.then(function(res) {
alert(res);
}); // <----------- Add closing ")" here
另请注意,我已将函数mySuccesss
的名称取出,因为它不需要。传递给promise then
函数的第一个函数将始终用作成功回调函数。除非您在其他地方使用功能名称,否则它并不是真正需要的。你可以争辩说它命名功能并告诉读者它是&#34;成功&#34;函数回调,但代码已经告诉你 - 通过将其作为第一个参数传递。