2017-01-19 1 views
0

나는 각도를 배우고 있습니다. 지난 시간 동안 요청이 성공한 것처럼 보이더라도 내 페이지에 아무런 표시가 없습니다. 문제(AngularJS) ng : areq 잘못된 인수 : 인수 'fn'이 (가) Object가 아닌 함수입니까?

구성 요소 :

// Register `eventsQc` component, along with its associated controller and template 
angular. 
module("eventsQc"). 
component("listeEvenements", { 
    templateUrl: "appli/liste-events/template-liste-evenements.html", 
    controller: function evenementsQuebecController($http) { 
     var self = this; 
     self.orderProp = 'DT01'; 
     $http.get("/appli/data/evenements-source.json").then(function(reponse) { 
      for (i = 0; i < reponse.data.evenements.evenement.length; i++) { 
       self.evenements = reponse.data.evenements.evenement[i]; 
      } 
     }); 
    } 
}); 

index.html 페이지의 출력

<ul> 
    <li ng-repeat="evenement in $ctrl.evenements"> 
     <div>ID- {{evenement.MUNID}}</div> 
    </li> 
</ul> 

그리고 마지막으로 코드를 표시하는 데 사용되는 HTML. 구성 요소가 생성 된 것을 볼 수 있습니다.

<!doctype html> 
<html lang="en" ng-app="eventsQc"> 

<head> 
    <meta charset="utf-8"> 
    <title>Quoi faire à Québec</title> 
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous"> 
</head> 

<body> 

    <liste-evenements></liste-evenements> 
</body> 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.7/angular.min.js"></script> 
<script src="appli/app.js"></script> 
<script src="appli/liste-events/liste-events-component.js"></script> 
</body> 

</html> 

ng-inspector가 $ http 호출에서 결과를 보여 주더라도 모든 내용을 검사했지만 아무 것도 페이지에 표시되지 않습니다.

+1

mo dule'angular.module ("eventsQc", [])', 어디에서 사용하기 전에? – Satpal

+0

예 별도의 app.js 파일에 정의했습니다. –

답변

1

예를 들어, 구성 요소

var app = angular.module('eventsQc'); 

    app.component(
       'listeEvenements', 
       { 
        templateUrl : 'appli/liste-events/template-liste-evenements.html', 
        controller : function ($http,$scope) { 
         $scope.Register = function() { 
          var req = { 
           method: 'GET', 
           url: '/appli/data/evenements-source.json', 
           data: { } 
          }; 

          $http(req).then(
           function(response){ 
            console.log(req); 
            console.log(response); 
           $scope.evenements= response.data.data; 


           }, function (error) { 
            console.log(error.data); 
           }); 
         } 

        } 
    }); 

HTML ($ 제거하기)

<ul> 
    <li ng-repeat="evenement in evenements"> 
     <div>ID- {{evenement.MUNID}}</div> 
    </li> 
</ul> 

<button ng-click="Register()">REGISTER</button> 

이 (app.js에 모듈을 정의하는 것을 잊지 않는다 : 난 그냥 동일한 메시지가 계속)

var app = angular.module('eventsQc', []); 
+0

도움을 주셔서 감사하지만이 연습에서는 $ 범위를 사용하고 싶지 않습니다. 어쨌든 나는 내 문제를 알아 냈고 해결할 수있었습니다. 감사! –

관련 문제