2015-06-20 50 views
2

我有一个非常简单的角度例如:NG:AREQ错误在简单的应用程序

<html ng-app> 
<head> 
    <title>Angular Test</title> 
</head> 
<body ng-controller='myController'> 
    <h1>Angular Test</h1> 
    <p>{{hello.text}}</p> 
    <script src='https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js'></script> 
    <script> 
    function myController ($scope) { 
     $scope.hello = {text : 'Hello World!'}; 
    } 
    </script> 
    </body> 
</html> 

正如你可以看到我使用的角度从CDI。虽然当我在浏览器中查看这一点,我得到以下错误:

Error: [ng:areq] http://errors.angularjs.org/1.3.16/ng/areq?p0=myController&p1=not%20a%20function%2C%20got%20undefined 
    at Error (native) 
    at https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js:6:417 
    at Sb (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js:19:510) 
    at La (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js:20:78) 
    at $get (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js:75:465) 
    at https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js:57:178 
    at q (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js:7:428) 
    at M (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js:57:45) 
    at g (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js:51:409) 
    at g (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js:51:426) 

我真的只是开始与角所以这很可能是一个很小白的错误。

回答

2

您正在使用Angular 1.3.16,这意味着您必须手动将您的控制器注册到您的应用程序,并且不要使其成为匿名。

所以您需要更改这个在JavaScript代码:

var myApp = angular.module('myApp', []); 
myApp.controller('myController', myController); 

,并定义模块这样的:

ng-app="myApp" 
+0

非常感谢。我相信一大堆新人必须遇到这个问题,并且很困惑。 – Tiwaz89

+1

@DeanGrobler当时包括我自己:) –

0

检查库的位置和请把里面的头

<html ng-app> 
<head> 
    <title>Angular Test</title> 
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.5/angular.min.js"></script> 
</head> 
<body ng-controller='myController'> 
    <h1>Angular Test</h1> 
    <p>{{hello.text}}</p> 
    <script> 
    function myController ($scope) { 
     $scope.hello = {text : 'Hello World!'}; 
    } 
    </script> 
    </body> 
</html> 

调整器:http://plnkr.co/edit/gBUAabtisdHFKxikmjkA?p=preview