Hay tantos métodos que pueden pasar datos de un controlador a otro controlador.
1. Servicios o Fábrica . [Comúnmente utilizado]
- ¿Qué softwares o idiomas debería uno estudiar para diseñar páginas web?
- ¿Cuál es el salario promedio para el desarrollador angular js en la India?
- ¿Es bueno usar Angularjs para aplicaciones de múltiples inquilinos?
- ¿Quiénes son algunos buenos desarrolladores de WordPress en India?
- Cómo agregar datos que están en idioma nativo (asamés) a la base de datos mySql
código de muestra para Servicios:
módulo var = angular.module (‘myapp’, []);
module.service (‘userService’, function () {
this.users = [‘John’, ‘James’, ‘Jake’];
});
Código de muestra para la fábrica:
module.factory (‘userServices’, function () {
var fac = {};
fac.users = [‘John’, ‘James’, ‘Jake’];
volver fac;
});
Luego puede inyectar estos servicios o fábricas en su controlador. Donde pueda obtener datos de estos.
2. $ emit y $ broadcast
// primer controlador
app.controller (“firstCtrl”, function ($ scope) {
$ scope. $ on (‘eventName’, function (event, args) {
$ scope.message = args.message;
}); });
// segundo controlador
app.controller (“secondCtrl”, función ($ scope) {
$ scope.handleClick = function (msg) {
$ scope. $ emit (‘eventName’, {mensaje: msg}); }; });
Controlador principal
Emitir mensaje:
Controlador secundario
[Gracias y referencia: Comprensión de $ emit, $ broadcast y $ on en AngularJS]
3. $ rootScope
$ rootScope: es un objeto principal de todos los objetos angulares “$ scope” creados en una página web.
$rootScope
está disponible globalmente, donde $scope
solo está disponible para el controlador actual y sus hijos.
ejemplo:
// controlador 1
$ rootScope.controllerVariable1 = ”John”;
donde sea que puedas conseguirlo.
// controlador 2
$ scope.name = $ rootScope.controllerVariable1;
{ Nota : $ rootScope config para datos globales o alguna configuración de datos pequeños. La transferencia de datos de gran tamaño va a la fábrica o servicios del primer método.
4.El controlador hereda a otro controlador
app.controller (‘ParentCtrl’, function ($ scope) {
// Soy el hermano, pero quiero actuar como padre
});
app.controller (‘ChildCtrl’, función ($ scope, $ controller) {
$ controller (‘ParentCtrl’, {$ scope: $ scope});
});
5. $ padre
Vista de relación de padres anidados, puede usar $ parent
{{title}}
{{descripción}}
{{title}}
6. Almacenamiento Local
Depende de su proyecto, puede usar el almacenamiento local para configurar los datos en local y obtenerlos de donde sea.
no use la configuración de datos grandes en el almacenamiento local.
[Nota: el usuario es completamente responsable de la seguridad de los datos.]
Enviar