Документация

t pipe

Не все можно обернуть в компонент. Такие атрибуты, как placeholder или title, принимают строку, и иногда вам нужен перевод в код TypeScript. Для этого используйте метод t pipe или translate сервиса MagicTranslate.

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 возвращает исходный текст до тех пор, пока перевод не будет загружен. Как и в случае с компонентом <t>, в качестве опций используются язык и формальности:

<input [placeholder]="'Your name' | t: { lang: 'fr', formality: 'formal' }" />

Перевод в коде

Чтобы перевести строку в TypeScript, вызовите translate в сервисе MagicTranslate. Он возвращает обещание.

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 options
const formal = await magicTranslate.translate('How are you?', {
lang: 'fr',
formality: 'formal'
});

Без опции lang текст переводится на текущий язык.