syamskoy
@syamskoy

Как задать локаль в ангуляре?

Доку читал, но что-то не выходит.
Ставлю:
ng add @angular/localize

В app.module.ts:
import { registerLocaleData } from '@angular/common';
import localeRu from '@angular/common/locales/ru';
import localeRuExtra from '@angular/common/locales/extra/ru';
registerLocaleData(localeRu, 'ru-RU', localeRuExtra);

...

  providers: [
    {provide: LOCALE_ID, useValue: 'ru-RU'}
  ],
...


В коде:
{{product.price || currency }}
Запускаю:
ng serve
Выводит один хрен баксы. Если писать так, то рубли:
{{product.price || currency:'RUB' }}

Во всем интернете одни и те же решения: registerLocaleData(localeRu); Но не работает же :((
Где-то пишут что добавить опцию: ng serve --locale или --localize или еще разные варианты, результат: unknown options
  • Вопрос задан
  • 2141 просмотр
Решения вопроса 1
syamskoy
@syamskoy Автор вопроса
Локаль оказывается переключается, но ангуляр для currency всегда использует по умолчанию USD, не зависимо от локали. Но с версии 9, появилась возможность задать валюту по умолчанию:
{provide: DEFAULT_CURRENCY_CODE, useValue: 'RUB'}
Подробней тут: https://angular.io/api/common/CurrencyPipe

Странно что никто с этим не сталкивался, и нигде нет об этом информации.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы