2014-09-01 137 views
0

我正在学习Angular。下面的代码工作:但是角度进入控制器

.controller('abc', function ($scope, $http) 
{ 
$http.get("/Handlers/Authentication.ashx") 
    .success(function (data) 
    { 
    alert(data); 
    }) 

此功能不会:

.controller('abc', function ($scope, $http) 
{ 
$scope.run = function ($scope, $http) 
{ 
    $http.get('/Handlers/Authentication.ashx'); 
    // .success(function (data) 
    //{ 
    // alert(data); 
    //}); 
}; 
} 

我知道我应该在这里使用服务。但学习的目的,我想知道为什么它不工作来调用这个函数里面:

<body ng-app="MainModule"> 
<div ng-controller="abc"> 
<div> 
    <button type="button" class="btn btn-info" ng-click="run();">{{xx}}</button> 

感谢您的帮助提前

回答

1

你重写控制器注入$http服务在这里:

$scope.run = function ($scope, $http) 
{ 
    $http.get('/Handlers/Authentication.ashx'); 
    // .success(function (data) 
    //{ 
    // alert(data); 
    //}); 
}; 

只是删除所有的参数在你的范围功能,它应该工作:

.controller('abc', function ($scope, $http) { 
    $scope.run = function() { 
     $http.get('/Handlers/Authentication.ashx') 
      .success(function (data){ 
       alert(data); 
      }); 
    }; 
} 
+0

谢谢,它现在有效 – Yoyosh 2014-09-01 16:15:43

0

因为你得到的数据,但不要用它做一些东西。

$http.get('/Handlers/Authentication.ashx').then(function(data){ 
     console.log(data); 
}, function(err){ 
    console.log(err); 
}) 
+0

我设置断点服务器端,它没有被解雇 – Yoyosh 2014-09-01 16:16:07