2016-09-30 10 views
0

Webアプリケーションを開発中です。私のアプリケーションでは、Angular JSを使用しています。私はAngular JSを初めて使っています。しかし今、私は宣言するコントローラーに問題があります。ここに私のコードです。Angular Jsでコントローラを宣言できません

<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

スクリプトタグに以下のコードを追加してください。

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

}]); 
+0

ああから答えを読んでください。ありがとうございました。これはうまくいった。 –

2

あなたのコントローラをどこかに定義し、それをまずアプリケーションに依存するものとして追加する必要があります。 例:

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

、アプリの定義で:あなたは、HTMLのdivタグでそれを使用する前に、コントローラの関数 'DefaultController' を定義する必要が

var app = angular.module('memeApp',['ngRoute','ui.bootstrap', 'app.controllers']); 
関連する問題