angular Js - scope

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: