angular.bootstrap()
Doğrudan kullanabilirsiniz ... sorun direktiflerin faydalarını kaybetmektir.
Öncelikle, önyükleme yapmak için HTML öğesine bir referans almanız gerekir; bu, kodunuzun artık HTML'nize bağlandığı anlamına gelir.
İkincisi, ikisi arasındaki ilişki o kadar belirgin değil. İle ngApp
açıkça neyi modülü ile ilişkili oluğunu HTML görebilir ve nerede bilgi aramak için biliyorum. Ancak angular.bootstrap()
kodunuzun herhangi bir yerinden çağrılabilir.
Eğer bunu en iyi şekilde yapacaksanız bir yönerge kullanmak olacaktır. Ben de öyle yaptım. Denir ngModule
. Kodunuzu kullanmak gibi görünecektir:
<!DOCTYPE html>
<html>
<head>
<script src="angular.js"></script>
<script src="angular.ng-modules.js"></script>
<script>
var moduleA = angular.module("MyModuleA", []);
moduleA.controller("MyControllerA", function($scope) {
$scope.name = "Bob A";
});
var moduleB = angular.module("MyModuleB", []);
moduleB.controller("MyControllerB", function($scope) {
$scope.name = "Steve B";
});
</script>
</head>
<body>
<div ng-modules="MyModuleA, MyModuleB">
<h1>Module A, B</h1>
<div ng-controller="MyControllerA">
{{name}}
</div>
<div ng-controller="MyControllerB">
{{name}}
</div>
</div>
<div ng-module="MyModuleB">
<h1>Just Module B</h1>
<div ng-controller="MyControllerB">
{{name}}
</div>
</div>
</body>
</html>
Bunun için kaynak kodunu şu adresten alabilirsiniz:
http://www.simplygoodcode.com/2014/04/angularjs-getting-around-ngapp-limitations-with-ngmodule/
Aynı şekilde uygulanır ngApp
. Sadece angular.bootstrap()
perde arkasını çağırıyor .