La funzione che definisce il controller ha un parametro $scope.
Questo parametro, che inizia con il dollaro ($
) come tutti gli oggetti di sistema, viene passato dal framework al controller
ed è un oggetto condiviso con la view.
Il compito dello scope è di consentire la definizione del modello dei dati e la sua esposizione alla view.
Tutte le proprietà di questo oggetto saranno direttamente accessibili dalla view, come avviene nel nostro esempio per nome
e cognome
legati alla view tramite la direttiva ng-model
.
In linea di massima è preferibile definire il modello dei dati come un oggetto dello scope
, invece che una serie di proprietà.
Oltre alle proprietà lo scope
è in grado di esporre anche i propri metodi alla view.
Ad esempio, un metodo metodo()
come mostrato di seguito:
angular.module("myApp", []) .controller("userController", function($scope) { $scope.utente = { nome: "Mario", cognome: "Rossi"}; $scope.metodo = function() { return "qualcosa" }; });
Utilizzeremo questo metodo nel punto in cui vogliamo visualizzare il saluto: