¡Esta es una revisión vieja del documento!
Una constant
es un servicio al que le pasamos directamente el valor de dicho servicio. Su principal característica es que se puede inyectar en cualquier sitio. Se define llamando al método constant
de un módulo.A dicho método se pasaremos el nombre de la constante y su valor.
Veamos ahora un ejemplo de constant
.
<!DOCTYPE html> <html ng-app="app"> <head> <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.19/angular.min.js"></script> <script src="script.js"></script> </head> <body ng-controller="PruebaController"> El valor de la constante "miServicioConstante" = {{valor}} </body> </html>
var app=angular.module("app",[]); app.constant("miServicioConstante","Hola mundo"); app.controller("PruebaController",["$scope","miServicioConstante",function($scope,miServicioConstante) { $scope.valor=miServicioConstante; }]);
$scope.valor
Si ejecutamos el ejemplo veremos en la página HTML el texto:
El valor de la constante "miServicioConstante" = Hola mundo
Al ser una constante parece que solo pueda tener valores escalares pero puede tener cualquier cosa como referencias a objetos, referencia a funciones, etc.
Veamos ahora un ejemplo con distintos valores de constantes.
<!DOCTYPE html> <html ng-app="app"> <head> <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.19/angular.min.js"></script> <script src="script.js"></script> </head> <body ng-controller="PruebaController"> idioma = {{idioma}} <br> suma de 3 + 6 = {{suma}} <br> area = {{area}} </body> </html>
var app=angular.module("app",[]); app.constant("idioma","es-es"); app.constant("matematicas_simples",{ sumar:function(a,b) { return a+b; }, restar:function(a,b) { return a-b; } }); app.constant("radio",10); app.constant("area",function(radio) { return 3.1416*radio*radio; }) app.controller("PruebaController",["$scope","idioma","matematicas_simples","radio","area",function($scope,idioma,matematicas_simples,radio,area) { $scope.idioma=idioma; $scope.suma=matematicas_simples.sumar(3,6); $scope.area=area(radio); }]);