Моя угловая версия - 1.4.8.Почему я должен добавить хвост «Provider» в Service Name, когда я использовал es6
Я услуга определяется с эс-6 класса
class OrdersService {
...
}
export default angular.module('services.orders', [])
.service('ordersService', OrdersService)
.name;
Я хочу, чтобы внедрить его в другой модуль
import ordersService from 'orders.service'
function routes($stateProvider, ordersService) {
....
}
routes.$inject = ['$stateProvider', 'ordersService'];
export default angular
.module('orders',[ordersService])
.config(routes)
Но Угловой бросок сказал исключение "не удалось найти OrderService провайдера , Но добавьте хвост «Провайдер» для обслуживания, заставив его работать.
routes.$inject = ['$stateProvider', 'ordersServiceProvider'];
В этой статье автор не добавляет, а продолжает работать. http://angular-tips.com/blog/2015/06/using-angular-1-dot-x-with-es6-and-webpack/
class RandomNames {
....
}
export default angular.module('services.random-names', [])
.service('randomNames', RandomNames)
.name;
import randomNames from 'randomNames'
export default class HomeController {
....
}
HomeController.$inject = ['randomNames'];
Почему мне нужно добавить 'Provider' к службе? Есть ли api doc, чтобы объявить это?
'функции маршрутов ($ stateProvider, $ ordersService)' мы не используем '$' с ними .. может быть, вот что вызвало у вас проблемы – Minato
@Minato Спасибо, а $ - ошибка ввода. Исключение составляет $ inject. –