2016-04-12 13 views

Antwort

0

Wie von Kitler angemerkt, können Sie den i18n-Dienst Ihren Mixins injizieren, damit Sie sie in Ihren Komponenten verwenden können.

export default Ember.Mixin.create({ 
    i18n: Ember.inject.service(), 

    translate: function(key, options) { 
    return this.get('i18n').t(key, options); 
    } 
}); 

Was erwarten Sie mehr? Möchten Sie alle Beschriftungen als Decorator ändern? Wenn Sie den Aufkleber einer Komponente mit einem Mixin dekorieren möchten, gehen Sie folgendermaßen vor:

export default Ember.Mixin.create({ 
    i18n: Ember.inject.service(), 

    translate: function(key, options) { 
    return this.get('i18n').t(key, options); 
    }, 

    init(){ //init or didReceiveAttrs 
    this._super(...arguments); 
    this.set('label', this.translate(this.get('label'))); 
    } 
}); 
+0

Danke und kitler auch. Ich habe versucht Mixin zu injizieren, aber wegen Tippfehler hatte ich keinen Erfolg. Jetzt funktioniert alles! –