2017-07-27 2 views
0

私はロダッシュを使用して角4のアプリを持っています。角度4について読むと、テストをより簡単にするために、依存関係注入によってほとんどのものが含まれます。Angular 2/4アプリにlodashを含めるには、テスト可能な方法は何ですか?

lodashにDIを使用することについて心配する必要がありますか?その場合、私は自分のプロジェクトに設定する方法を教えてください。

答えて

0

はい、DIを使用してコードを疎結合にする必要があります。

この場合、アンダースコアの注射可能依存関係を作成する必要があります。同じOpaqueTokenを作成すると便利です。

共通/ underscore.service.ts

import { OpaqueToken } from '@angular/core' 
declare let _: any ; //just typescript to consider _ API is available 

export let UNDERSCORE = new OpaqueToken('UNDERSCORE'); 
export const loadDashProvider = [ 
    { provide: UNDERSCORE, useClass: _} 
]; 

あなたがあなたのクラスのコンストラクタ内UNDERSCOREトークンを使用することができます_ JS APIにアクセスしたいときはいつでもAppModule

//imports here 

declare let _: any ; //just typescript to consider _ API is available 

@NgModule({ 
    declarations: [...], 
    imports: [...], 
    providers: [ 
     //... other dependecies ... , 
     loadDashProvider 
    ], 
}) 
export class AppModule { 
} 

れ、最終的になりますそれに_ APIをもたらします。

関連する問題