programing

Angularjs 인수가 문자열을 얻은 함수가 아닙니다.

skycolor 2023. 10. 19. 22:08
반응형

Angularjs 인수가 문자열을 얻은 함수가 아닙니다.

저는 angularjs를 처음 접하는 사람입니다.저는 제 홈페이지에 게시물 목록이 있는 애플리케이션을 만들고 있습니다.저는 그 페이지에만 angularjs를 양방향 바인딩에 사용하려고 생각했습니다.샘플 페이지로 시작했는데 여기 자체에서 문제가 생겼습니다.

내 샘플 페이지.나는 angularjs가 페이지의 다른 측면과 상호 작용하는 것을 원하지 않기 때문에 이 디브에만 ng-app을 사용하고 있습니다.

<div ng-app="posts">
  <ul class="post_list" ng-controller="PostController">
    <li ng-repeat="post in posts">
    {{post.title}}
    {{post.description}}
    </li>
  </ul>
</div>

나는 app.js 파일을 가지고 있습니다.

var app = angular.module('posts', []);

그리고 postcontroller.js 파일이 있습니다.

(function(angular, app) {
  // Define the Controller as the constructor function.
  console.log(app);
  console.log(angular);
  app.controller("PostController",["$scope"], function($scope) {
    $scope.posts = [
      {"title":"asdf", "description":"describe"},
      {"title":"second one", "description":"second describe"},
    ];
  });
})(angular, app);

홈 페이지를 로드할 때.나는 점점

오류: 인수 "PostController"가 함수가 아닙니다.got string [googlecdn path] angular.min.js:16

여기서 내가 놓치고 있는 게 뭐죠?제가 완전히 혼란스러우니 도와주세요.저는 angularjs와 자바스크립트를 처음 접합니다.

컨트롤러를 선언하는 방식에 문제가 있습니다.다음과 같이 해야 합니다.

app.controller("PostController",["$scope", function($scope) {
    $scope.posts = [
      {"title":"asdf", "description":"describe"},
      {"title":"second one", "description":"second describe"},
    ];
  }]);

두 번째 인수는 a와 a를 모두 포함하는 배열입니다.$scope문자열과 배열의 요소로 기능합니다.이것은 미니미네이션-세이프 코드를 작성하는 데 사용하기에 적합한 구문입니다.

언급URL : https://stackoverflow.com/questions/17219431/angularjs-argument-is-not-a-function-got-string

반응형