2016-09-30 5 views
0

웹 응용 프로그램을 개발 중입니다. 내 응용 프로그램에서 Angular JS를 사용하고 있습니다. Angular JS를 처음 사용합니다. 하지만 지금은 선언하는 컨트롤러에 문제가 있습니다. 여기 내 코드가있다.각도 J에서 컨트롤러를 선언 할 수 없습니다.

<html> 
<head> 
//files references 
</head> 
<script> 
var app = angular.module('memeApp',['ngRoute','ui.bootstrap']); 
</script> 
<nav class="nav-bar"> 
<a href="page1">Home</a> 
<a href="page2">Account</a> 
</nav> 
<div class="content" ng-app="memeApp" ng-controller="DefaultController"> 
//content 
</div> 
</div> 
</body> 
</html> 

알다시피 나는 아직 아무 것도하지 않았습니다. DefaultController라는 컨트롤러를 선언합니다. 내가 로그인하십시오 때, 오류 다음 날주고있다 :

enter image description here

그래서 내 컨트롤러가 완전히 작동하지 않습니다. 컨트롤러에 js 코드를 추가 할 때도 마찬가지입니다. 컨트롤러 지시문을 제거하면 오류가 사라집니다. 컨트롤러가 작동하지 않는 이유는 무엇입니까?

+1

내가 컨트롤러 당신은 당신이 정의하지 않은 컨트롤러를 선언 –

+1

존재하지 않는 경우에만 당신이 그것을 호출 어디서나 정의 표시되지 않습니다. DOM에서 제거하거나 다음과 같이 선언하십시오 :'appController (DefaultController ', function() {});' – Zakaria

+0

ng-app 선언 외에 ng-controller = "DefaultController"를 추가했습니다. @SterlingArcher –

답변

2

당신은 당신이 HTML을 div 태그에 사용하기 전에 컨트롤러 기능 'DefaultController'을 정의해야합니다.

스크립트 태그에 아래 코드를 추가하십시오.

app.controller('DefaultController', ['$scope', function($scope){ 

}]); 
+0

아하 답을 읽어보십시오. 고맙습니다. 이것은 효과가 있었다. –

2

어딘가에 컨트롤러를 정의하고 먼저 앱에 종속성으로 추가해야합니다. 예 :

angular.module('app.controllers', []) 
    .controller('DefaultController' function() { 
     //do stuff 
    }; 

및 앱 정의

:

var app = angular.module('memeApp',['ngRoute','ui.bootstrap', 'app.controllers']); 
관련 문제