Я использую ngx-translate для интернализации моего angular приложения. Я добавил выпадающий список из 3 языков (fr, de и en). При переключении языка я хочу изменить символ валюты. Я также добавил пользовательский канал, но он не работает.
table.component.html
<p>{{'company' | translate}}</p> - this value is changing
<p>{{payment.amount | mycurrency}}</p> - this value is not changing
mycurrency.ts
import { Pipe, PipeTransform } from '@angular/core';
import { formatCurrency, getCurrencySymbol } from '@angular/common';
import { DEFAULT_LANGUAGE } from '@ngx-translate/core';
@Pipe({
name: 'mycurrency',
})
export class MycurrencyPipe implements PipeTransform {
code: any;
constructor() {
if (localStorage.getItem("language") == 'fr' || localStorage.getItem("language") == 'de') {
this.code='EUR';
}
else {
this.code ='USD';
}
}
transform(
value: number,
currencyCode: string = this.code,
display:
| 'code'
| 'symbol'
| 'symbol-narrow'
| string
| boolean = 'symbol',
digitsInfo: string = '3.2-2',
locale: string = localStorage.getItem("language"),
): string | null {
console.log("Ds");
return formatCurrency(
value,
locale,
getCurrencySymbol(currencyCode, 'wide'),
currencyCode,
digitsInfo,
);
}
}
'''