<!DOCTYPE html>
<html>
<head>
<script data-require="angular.js@1.5.9" data-semver="1.5.9" src="https://code.angularjs.org/1.5.8/angular.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
</head>
<body>
<h1>Varias apps y controladores</h1>
<h2>Angular sólo permite una directiva ng-app por página</h2>
<h3>No siempre es lo que queremos</h3>
<div id="div1">
<h1>Div Uno</h1>
<div ng-controller="ControllerUno">
{{nombre}}
</div>
<div ng-controller="ControllerDos">
{{nombre}}
</div>
</div>
<div id="div2">
<h1>Div dos</h1>
<div ng-controller="ControllerDos">
{{nombre}}
<button ng-click="funcionClick($event)">Pincha</button>
</div>
</div>
</body>
</html>
// Code goes here
var moduloUno = angular.module("ModuloUno", []);
moduloUno.controller("ControllerUno", function($scope) {
$scope.nombre = "Nombre uno en módulo uno";
});
var moduloDos = angular.module("ModuloDos", []);
moduloDos.controller("ControllerDos", function($scope) {
$scope.nombre = "Nombre uno en módulo dos";
$scope.funcionClick = function(e) {
alert('Click:' + e.clientX + ',' + e.clientY);
};
});
angular.element(document).ready(function() {
var myDiv1 = document.getElementById("div1");
angular.bootstrap(myDiv1, ["ModuloUno", "ModuloDos"]);
var myDiv2 = document.getElementById("div2");
angular.bootstrap(myDiv2, ["ModuloDos"]);
});
/* Styles go here */
Uso de varios módulos
Varios controladores