Das t pipe
Nicht alles kann in eine Komponente verpackt werden. Attribute wie placeholder oder title benötigen eine Zeichenfolge, und manchmal benötigst du eine Übersetzung in deinem TypeScript-Code. Verwende für diese die Methode t pipe oder translate des MagicTranslate-Dienstes.
Das t pipe
import { Component } from '@angular/core';import { TranslatePipe } from '@magic-translate/angular';@Component({selector: 'app-search',imports: [TranslatePipe],template: `<input [placeholder]="'Search products' | t" />`})export class Search {}
pipe gibt den Originaltext zurück, bis die Übersetzung geladen ist. Wie die Komponente <t>, sie nimmt die Sprache und die Formalität als Optionen an:
<input [placeholder]="'Your name' | t: { lang: 'fr', formality: 'formal' }" />
Im Code übersetzen
Um eine Zeichenfolge in TypeScript zu übersetzen, rufe translate im Dienst MagicTranslate an. Es gibt ein Versprechen zurück.
import { inject } from '@angular/core';import { MagicTranslate } from '@magic-translate/angular';const magicTranslate = inject(MagicTranslate);const message = await magicTranslate.translate('Your order has been placed');// with optionsconst formal = await magicTranslate.translate('How are you?', {lang: 'fr',formality: 'formal'});
Ohne die Option lang wird der Text in die aktuelle Sprache übersetzt.