그 t pipe
모든 것을 컴포넌트에 담을 수 있는 건 아니야.placeholder 또는 title 같은 어트리뷰트는 문자열을 사용하며 가끔 타이프스크립트 코드에 번역이 필요할 때가 있어.이런 경우 t pipe 또는 MagicTranslate 서비스의 translate 방법을 사용해.
그 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' }" />
코드로 번역하기
타이프스크립트에서 문자열을 번역하려면 MagicTranslate 서비스에서 translate 호출해.약속을 돌려줘.
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'});
lang 옵션 없으면 텍스트가 현재 언어로 번역돼.