2014-10-30 13 views
6

Ciao Sto seguendo alcuni tutorial di angularjsottenendo un errore quando si utilizza ng-controller nella angularjs ver 1.3.0

sto usando la versione 1.3.0 angularjs

Ecco il mio codice

<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> 

E penso di aver fatto lo stesso del tutorial. Ma mi dà il seguente errore quando controllo con 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 

Come sbarazzarsi di questo?

+0

versione angolare? –

+0

1.3.0 è la versione – tarzanbappa

risposta

24

in 1.3.0 u angolari devono fare come sotto, perché i controller globali sono stati disabilitati 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> 

Essa ha anche detto che è possibile ottenere il comportamento più anziano utilizzando il codice qui sotto, ma la sua non è raccomandato

<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"; 
} 
+0

grazie .. Userò la nuova – tarzanbappa

Problemi correlati