Benutzerdefinierter Angular-Anbieter funktioniert nicht, aber kein Fehler
-
20-12-2019 - |
Frage
Ich habe ein einfaches Winkelprojekt mit dem Yeoman-Winkelgenerator gestartet.
Ich habe der App nur sehr wenige Dinge hinzugefügt:
angular.module('myApp', ['ui.router',
'ngAnimate',
'ngCookies',
'ngResource',
'ngSanitize',
'loginService',
'restangular']).
config(function($urlRouterProvider, $stateProvider) {
$urlRouterProvider.otherwise('/');
return $stateProvider.state('home', {
url: '/',
templateUrl: 'views/main.html',
controller: 'MainCtrl'
}).state('about', {
url: '/about',
templateUrl: 'views/about.html',
controller: 'AboutCtrl'
});
}).run(function($state) {
return $state.transitionTo('home');
});
loginService
ist ein Brauch Anbieter, und anscheinend hat es keinen js-Fehler.Ich lade es von index.html und anscheinend gibt mir die Browserkonsole keine Fehlermeldung.Der Übersichtlichkeit halber habe ich das genommen Login-Dienst aus Angular-Login-Beispiel
Das Problem ist, dass es immer dann nicht mehr funktioniert, wenn ich diesen Dienst zur App hinzufüge, und ich keine Fehlermeldung erhalte.Ich habe versucht, die Abhängigkeit zu kommentieren loginService
wenn ich mein App-Modul deklariere, scheint es aber nicht zu helfen.
Der einzige Sache Damit die App funktioniert, muss sie vollständig entfernt werden <script src="scripts/services/login-service.js"></script>
Tag aus der index.html
Vielleicht habe ich einen js-Fehler darin?Aber die Konsole des Browsers scheint ziemlich robust zu sein.
BEARBEITEN: Ich erzeuge mein Skript aus Coffescript. Vielleicht könnte das etwas damit zu tun haben, ich meine, dass bei dieser Konvertierung etwas passiert ist, das ich übersehen habe?Hier das Login-Dienste in CoffeeScript und nach der Umwandlung in Javascript
Lösung
Ihre Datei beginnt mit
angular.module('myApp', [])
Indem Sie dies tun, Sie neu definieren das Modul „myApp“ und sagt, dass es überhaupt keine Abhängigkeit hat.Sie möchten einen Verweis auf das Modul „myApp“ erhalten und es nicht neu definieren.Sie brauchen also
angular.module('myApp')