2016-11-30 9 views
3

私のアプリケーションをコンパイルしようとすると"Error encountered resolving symbol values statically. Function calls are not supported. Consider replacing the function or lambda with a reference to an exported function, resolving symbol DeclarantModule"エラーが発生します。これは、モジュールにforRootまたはStoreModule.provideStore(rootReducer)関数呼び出しがある場合に発生します。AOTコンパイル - forRootとその他のfunc呼び出しの問題

修正方法?なぜこれが起こるのですか?私はそれがconfigsでモジュールをインポートするネイティブな角度2の関数だと思ったのです。

+0

今のところ、モジュールを設定してAOTを使用することはできないようです。 – lexigren

+0

ここに記載されているように、角度バージョン2.3.1に戻してください。http://stackoverflow.com/questions/41463860/how-to-use-routermodule-forroot-in-angular2-compiler-cli-ngc-command/41480174#41480174 –

答えて

0

私は、エラーメッセージとして解決https://stackoverflow.com/a/39344889/4956569

が示唆...機能としてそれを輸出...

ポストのオリジナルの実装は、(で作業していないこの記事に基づいての角度「LOCALE_ID」を提供し、このエラーを受け取りましたAOTコンパイル)

{ 
    provide: LOCALE_ID, 
    deps: [SettingsService],  //some service handling global settings 
    useFactory: (settingsService) => settingsService.getLanguage() //returns locale string 
} 

AOTコンパイルでの作業私の固定実装()

{ 
    provide: LOCALE_ID, 
    deps: [SettingsService],  //some service handling global settings 
    useFactory: localeIdFactory 
} 
export function localeIdFactory(settingsService: SettingsService) { 
    return settings.getLanguage(); 
} 
関連する問題