在angularjs采用NG-控制器版本1.3.0时,遇到了一个错误 [英] Getting an error when using ng-controller in angularjs ver 1.3.0
本文介绍了在angularjs采用NG-控制器版本1.3.0时,遇到了一个错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
你好,我下面angularjs的一些教程
Hi I'm following some tutorials of angularjs
我使用angularjs版本1.3.0
I'm using the angularjs version 1.3.0
这是我的code
<div ng-app="" ng-controller="personController">
First Name:
<input type="text" ng-model="firstName"><br>
Last Name:
<input type="text" ng-model="lastName"><br>
<br>
Full Name: {{firstName+" " + lastName}}
</div>
<script type="text/javascript">
function personController($scope) {
$scope.firstName = "David";
$scope.lastName = "Silva";
}
</script>
和我想我已经为相同的教程完成。但它给了我下面的错误,当我用萤火检查。
And I think I have done as same as the tutorial. But it gives me following error when I check with firebug.
Error: [ng:areq] Argument 'personController' is not a function, got undefined
http://errors.angularjs.org/1.3.0/ng/areq?
p0=personController&p1=not%20a%20function%2C%20got%20undefined
如何摆脱呢?
推荐答案
在角1.3.0 u必须做如下图所示,由于全球控制器是在1.3.0-β禁用。 <一href=\"https://github.com/angular/angular.js/blob/master/CHANGELOG.md#breaking-changes-13\">reference
in angular 1.3.0 u have to do like below, Because Global controllers were disabled in 1.3.0-beta. reference
<div ng-app="myApp" ng-controller="personController">
<script>
var app = angular.module("myApp",[]);
app.controller('personController', function($scope){
$scope.firstName = "David";
$scope.lastName = "Silva";
})
</script>
它还说,你可以使用下面code获得早期行为,但其不推荐
<div ng-app="myApp" ng-controller="personController">
var app = angular.module("myApp",[]).config(['$controllerProvider', function($controllerProvider) {
$controllerProvider.allowGlobals();
}]);
function personController($scope) {
$scope.firstName = "David";
$scope.lastName = "Silva";
}
这篇关于在angularjs采用NG-控制器版本1.3.0时,遇到了一个错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文