Я получаю эту ошибку, когда я пытаюсь прикрепить службу к контроллеру: [$ форсунки: unpr] ... webSocketServiceProvider < - webSocketService < - videoMenuCtrlНевозможно присоединить angularjs службы к контроллеру
I имеют plunker определенный с довольно минимальной настройкой, которая воспроизводит эту проблему:
http://plnkr.co/edit/ptaIaOhzOIG1mSi4bPyF?p=preview
Вот главные виновник файлы:
index.ht мл:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>title</title>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
</head>
<body ng-app="videoApp">
<section class="menu" ng-controller="videoMenuCtrl">
</section>
<script src="webSocketService.js"></script>
<script src="videoMenu.js"></script>
<script src="ngDialog.min.js"></script>
<script src="ngPopup.min.js"></script>
</body>
</html>
webSocketService.js:
(function(angular) {
'use strict';
angular.module('videoApp')
.factory('webSocketService', function($q) {
return{};
});
});
videoMenu.js:
'use strict';
var app = angular.module('videoApp', ['ngDialog', 'ngPopup']);
app.controller('videoMenuCtrl', function($scope, $window, $location, ngDialog, webSocketService) {
});
Я не получаю сообщение об ошибке, если я удалить webSocketService от контроллера, но точка заключается в том, чтобы контроллер мог получить доступ к webSocketService. Есть идеи? Благодаря!
Редактировать: Изменено имя файла typo.
Когда вы импортируете файл 'videoMenuCtrl.js'? Если это так же, как 'videoMenu.js', вам нужно загрузить этот файл до' webSocketService.js', поскольку последний использует модуль, определенный в первом. – floribon
Моя опечатка. videoMenuCtrl.js должен быть videoMenu.js. (Я его отредактирую). Первоначально у меня был videoMenu.js, указанный перед webSocketService.js в моем index.html, но изменил его, потому что videoMenu ссылается на webSocketService, поэтому я решил, что он должен быть первым. –