Проблема с угловым впрыском ресурса

0

Я начинаю со стека meanjs и добрался до начальника, что у меня нет правильного понимания Google.

У меня есть следующие файлы: **

(function () {
'use strict';

  angular
    .module('students')
    .controller('StudentsListController', StudentsListController);

  StudentsListController.$inject = ['StudentsService'];

  function StudentsListController(StudentsService) {
    var vm = this;

    vm.students = StudentsService.query();
  }
}());

Используя эту службу, я могу получить массив объектов Student в контроллере list-students, затем:

Список-students.client.controller.js

(function () {
  'use strict';

  angular
    .module('students')
    .factory('StudentsService', StudentsService);

  StudentsService.$inject = ['$resource'];

  function StudentsService($resource) {
    return $resource('api/students/:studentId', {
      studentId: '@_id'
    }, {
      update: {
        method: 'PUT'
      }
    });
  }
}());

Это работает по назначению. Я не понимаю, почему, когда я пытаюсь использовать одну и ту же услугу в другом контроллере, она, похоже, не в состоянии вставить, оставив меня с неопределенной переменной StudentsServices. Что дает?

students.client.controller.js

(function () {
'use strict';

  // Students controller
  angular
    .module('students')
    .controller('StudentsController', StudentsController);  

  StudentsController.$inject = ['$scope', '$state', 'Authentication',   'StudentsService'];

  function StudentsController ($scope, $state, Authentication, student, StudentsService) {
    var vm = this;

    vm.authentication = Authentication;
    vm.student = student;
    vm.students = StudentsService.query();
...
}());
Теги:

2 ответа

0
Лучший ответ

Ваш ввод неправильный.

'$scope', '$state', 'Authentication',   'StudentsService'

Но вы говорите, что контроллер ожидает

$scope, $state, Authentication, student, StudentsService
0

Я понял это, за AngularJS: Factory всегда не определена при вводе в контроллер

Это было то, что мои инъекции должны быть в том же порядке, что и параметры, переданные в функцию контроллера.

Ага!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню