Ich versuche, angular.module mehrmals zu definieren, ist einer für Controller und man ist für Service usw. TestService ist eine Fabrik, die in test.js definiert ist, und ich möchte es verwenden in der aktuellen HTML-Seite.angular js Definition Modul mehrere Male nicht funktioniert
HTML
<script src="test.js"></script>
<script>
var app = angular.module("myapp", ['TestService']).controller(
"MyController", function($scope, $cookies,TestService) {
<script>
Jetzt habe ich eine andere Javascript-Seite, wo ich einen Dienst zu schreiben versuche.
test.js
angular.module("myapp").factory('TestService', function() {
return {
sayHello: function(){
return "Factory says hi;
}
}
});
Ich bin der Fehler 'Testservice' bekommen ist nicht verfügbar!
Ja, aber ist es nicht erforderlich, den Service innerhalb der eckigen Klammer hier zu injizieren? zB angular.module ("myapp", ['TestService']) vs. angular.module ("myapp", []) –
Wenn Sie ein Modul erstellen, injizieren Sie nichts, das sind abhängige * Module * in Klammern, keine Dienste . So könnten Sie zum Beispiel das Modul Test erstellen, Ihren Dienst dorthin stellen und Test dann als Abhängigkeit für das Hauptmodul verwenden. 'angular.module ('Test', []). factory ('TestService', function() {...}); angular.module ('myapp', ['Test']). controller ('MyController', function() {...}) '. – dfsq