2017-01-30 10 views
7

Ich habe ein einfaches TranslationModul in Angular2 von this example. Jetzt, nach einem Winkel-cli Update erhalte ich die erwähnten Fehler, aber ich weiß nicht, was ich ändern:Angular 2 Fehler beim statischen Auflösen der Symbolwerte

import {NgModule} from "@angular/core"; 
import {TranslatePipe} from "./translate.pipe"; 
import {TRANSLATION_PROVIDERS} from "./translations"; 
import {TranslateService} from "./translate.service"; 

@NgModule({ 
    declarations: [ 
    TranslatePipe 
    ], 
    providers: [ 
    TRANSLATION_PROVIDERS, 
    TranslateService 
    ], 
    exports: [ 
    TranslatePipe 
    ] 
}) 
export class TranslateModule { 
} 

Und die translation.ts

import {OpaqueToken} from '@angular/core'; 

// import translations 
import {LANG_EN_US_NAME, LANG_EN_US_TRANS} from './lang-en_US'; 
import {LANG_DE_DE_NAME, LANG_DE_DE_TRANS} from './lang-de_DE'; 

// translation token 
export const TRANSLATIONS = new OpaqueToken('translations'); 

// default language 
export const DEFAULT_LANG = "en_US"; 

// all translations 
export const dictionary = { 
    [LANG_EN_US_NAME]: LANG_EN_US_TRANS, 
    [LANG_DE_DE_NAME]: LANG_DE_DE_TRANS 
}; 

// providers 
export const TRANSLATION_PROVIDERS = [ 
    {provide: TRANSLATIONS, useValue: dictionary} 
]; 

Antwort

4

Versuchen Sie, die Tasten zu ändern statische Werte wie:

export const dictionary = { 
    'en': LANG_EN_US_TRANS, 
    'de': LANG_DE_DE_TRANS 
}; 
+0

Vielen Dank, dies löste den statischen Import, aber letztlich möchte ich die Sprachkennung an einem Ort haben, am besten ist die eigentliche Übersetzungsdatei. – Pascal

Verwandte Themen