2016-07-01 3 views
23

Angular2 RC1からRC4にアップグレードしました。Angular2のprovide()関数はRC4以降で廃止されましたが、代わりに何を使用する必要がありますか?

私が使用する前に:

provide(LocationStrategy, {useClass: HashLocationStrategy}) 

を非推奨としてしかし、RC4にアップグレードした後、ショーを提供しています。

私はこれに関するドキュメントは見つかりませんでした。

何が起こったのか考えている人はいますか?

+0

インポートがどこに提供されているかを表示できますか? –

+14

マップリテラルを使用する '{provide:LocationStrategy、useClass:HashLocationStrategy} ' – yurzui

+3

返信いただきありがとうございます!どうやってこれを見つけましたか?ありがとう! – kdu

答えて

25

としては、上記のコメントで指摘された、あなたは今、まさにこのような次のように、provideuseClassプロパティを持つオブジェクトを使用する必要があります。

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からです。 Angular2のさまざまなアルファ、ベータ、RCリリースがリリースされたので、私はそれを更新しています。

+3

テストスーツにモックサービスを挿入するにはどうすればよいですか? 'TestBed.configureTestingModule({providers:[..]}) 'を使用して' providers'の下で –

+0

と同じ方法 – Tim

関連する問題