В следующем примере есть три модуля, первый требуется второму модулю. И это работает при использовании ng-app
в div
. Но третий модуль под названием someonesApp
не работает. Этот метод запуска не запускается, когда на второй модуль ссылаются с помощью ng-app. Без первых двух модулей работает третий, почему так?
<!DOCTYPE html>
<html >
<head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.3/angular.min.js"></script>
</head>
<body ng-init="name='123'">
<div ng-app="myApp">
</div>
<div ng-app="someonesApp">
</div>
<script>
var yourApp = angular.module('yourApp',[]);
yourApp.run(function(){
console.log('run block of yourApp');
});
var myApp = angular.module('myApp',['yourApp']);
myApp.run(function(){
console.log('run block of myApp');
});
var someonesApp = angular.module('someonesApp',[]);
someonesApp.run(function(){
console.log('run block of someonesApp');
});
</script>
</body>
</html>
Вот измененный код, в этом случае я удалил <div ng-app="myApp"></div>
и третий модуль работает.
<!DOCTYPE html>
<html >
<head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.3/angular.min.js"></script>
</head>
<body ng-init="name='123'">
<div ng-app="someonesApp">
</div>
<script>
var yourApp = angular.module('yourApp',[]);
yourApp.run(function(){
console.log('run block of yourApp');
});
var myApp = angular.module('myApp',['yourApp']);
myApp.run(function(){
console.log('run block of myApp');
});
var someonesApp = angular.module('someonesApp',[]);
someonesApp.run(function(){
console.log('run block of someonesApp');
});
</script>
</body>
</html>