2014-09-05 137 views
12

我是新来的角,并试图与1.3新版本。
这里是我的代码角1.3找不到控制器功能

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.0-rc.0/angular.min.js"></script> 
</head> 
<body> 
<div data-ng-controller="SimpleController" > 

<ul>   
<li data-ng-repeat="customer in customers">{{customer.name}} - {{customer.city}}</li> 
</ul> 


</div> 
<script> 

function SimpleController($scope){ 

    alert('done1'); 
    $scope.customers=[{name:'1name',city:'1city'},{name:'2name',city:'2city'}]; 
    alert('done'); 
} 
</script> 

控制台给出了这样的错误。

Error: [ng:areq] http://errors.angularjs.org/1.3.0-rc.0/ng/areq?p0=SimpleController&p1=not%20a%20function%2C%20got%20undefined  

但是,当我改变角度源

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0/angular.min.js"></script> 

然后,它的工作原理。我使用铬。 任何人都可以告诉我问题存在的地方。

+0

尝试unminified angular.js文件。错误信息通常易于理解 – Phil 2014-09-05 05:37:52

+0

@Phil。我试过'https:// ajax.googleapis.com/ajax/libs/angularjs/1.3.0-rc.0/angular.js'。还是一样。不工作.. – 2014-09-05 05:42:46

+0

我自己是新角度。你可以使用角度指令的数据属性?像'data-ng-controller'而不是'ng-controller'。其次,试一下这样的代码:'angular.module('controllers').controller('SimpleController',['$ scope',function($ scope){/ * ... * /}]);'。基本上,在“角的命名空间”中设置控制器 – Gasim 2014-09-05 05:46:33

回答

22

1.3中不再支持全局控制器功能。见change log ...

$控制器将不再在窗口上寻找控制器。在控制器窗口上查看旧的 行为原本打算用于示例,演示和玩具应用中的 。我们发现允许 全局控制器功能鼓励不良实践,因此我们在默认情况下解决了 以禁用此行为。

可以重新启用这个配置...

angular.module('myModule').config(['$controllerProvider', function($controllerProvider) { 
    // this option might be handy for migrating old apps, but please don't use it 
    // in new ones! 
    $controllerProvider.allowGlobals(); 
}]); 
+0

感谢您的回答。我对角度很陌生,假设有很多教程,并且应该基于1.2。如果我使用1.2教程移动到1.3版本,可能会出现类似这样的问题。 http://ng-learn.org/2014/06/Migration_Guide_from_1-2_to1-3/也显示了一些变化,我不知道他们是什么...你会推荐任何好的起点/教程1.3从头开始学习。 – 2014-09-05 06:12:33

+0

就个人而言,我会学习1.2,因为大部分材料都是基于1.2的。一旦你对Angular感到满意,许多这些东西都会有意义。 1.2和1.3之间存在差异,但基本概念保持不变。 – 2014-09-05 06:19:56

+0

如何过,当我snipt你提到添加代码,它给在控制台'未捕获的对象angular.js错误:80 (匿名函数)angular.js:80 (匿名函数)angular.js:1799 确保角。 js:1723 module angular.js:1797 (匿名函数)' – 2014-09-05 08:59:18