2016-07-01 5 views
23

Я только что обновился от Angular2 RC1 до RC4.Функция angular2's(), устаревшая в RC4 и более поздних версиях, что следует использовать вместо этого?

Раньше я:

provide(LocationStrategy, {useClass: HashLocationStrategy}) 

Однако, после того, как повышен до RC4, то обеспечить показывает, как осуждается.

Я не нашел никакой документации по этому вопросу.

Есть ли у кого-нибудь идеи о том, что произошло?

+0

Можете ли вы показать, где именно импортируется импорт? –

+14

Использование символа карты '{предоставить: LocationStrategy, useClass: HashLocationStrategy}' – yurzui

+3

Спасибо за ответ! Как вы это нашли? Благодаря! – kdu

ответ

25

Как было отмечено в предыдущих комментариях, теперь вы должны просто использовать объект с provide и useClass свойствами, например, в следующем:

bootstrap(App, [ 
    CookieService, 
    AuthService, 
    WindowService, 
    COMMON_DIRECTIVES, 
    ROUTER_DIRECTIVES, 
    HTTP_PROVIDERS, 
    provideRouter(AppRoutes), 
    { provide: LocationStrategy, useClass: HashLocationStrategy } 
]); 

Этот пример из моего Github project using Angular2, Bootstrap 4, OAuth2, and Webpack. Я обновлял его, когда были выпущены различные альфа-версии, бета-версии и RC-версии Angular2.

+3

Как вводить макет службы в тестовый костюм? –

+0

под 'providers', используя' TestBed.configureTestingModule ({providers: [..]}) так же, как здесь – Tim