2016-06-28 15 views
0

をサービスを注入する際、私は私のAuthGuardクラスでこのコンストラクタを持っている:Angular2のRC3:エラー(パラメータタイプを解決できません)コンストラクタで

@Injectable() 
export class AuthGuard implements CanActivate { 
    constructor(
     private ribbonService: RibbonService, 
     private checkSessionService: CheckSessionService, 
     private router: Router) { } 

    // etc 
} 

私はそれを構築細かいですが、通じアクセスしたときに、私は次のエラーを取得しますブラウザ:

reflective_provider.js:233 Uncaught Cannot resolve all parameters for 'AuthGuard'(undefined, CheckSessionService, Router). 
Make sure that all the parameters are decorated with Inject or have valid type annotations and that 'AuthGuard' is decorated with Injectable. 

私はなぜそれが第1のサービスにのみ起こり、第2には起こらないのか分かりません。最初のサービスがBaseServiceを拡張しているので、それが継承の問題だと思っていましたが、2番目のサービスをBaseServiceに拡張して動作させました。問題のあるものは最初のものだけです...

メモ各パラメータに@Injectデコレータを追加しようとしましたが、結果は同じです。

手前にありがとう!

+1

'RibbonService'、' CheckSessionService'、 'Router'、' ROUTER_PROVIDERS'、およびこれらのクラスが持つすべての依存関係の提供方法を​​示すコードを質問に追加してください。 –

答えて

0

RibbonService(またはその依存関係の1つ)は正しくインポートまたは提供されません。

関連する問題