如何在没有 ngx-translate-messageformat-compiler 插件的情况下在 ngx-translate 中使用复数

Seb*_*jas 7 ngx-translate angular angular8

我在使用 ngx-translate-messageformat-compiler 插件时遇到问题(添加复数形式后 json 文件解析失败)。\xc2\xbf还有其他选择吗?

\n

Seb*_*jas 8

我决定实现一个自定义管道:

管道

@Pipe({
  name: 'pluralTranslate',
  pure: false
})
export class PluralTranslatePipe implements PipeTransform {

  transform(key: string, number: number): string {

    return `${key}.${number == 0 ? 'none' : number == 1 ? 'singular' : 'plural'}`;
  }
}
Run Code Online (Sandbox Code Playgroud)

使用

{{ 'daysNumber' | pluralTranslate:2 | translate:{ days: 2} }}
Run Code Online (Sandbox Code Playgroud)

留言

{
"daysNumber": {
      "none": "",
      "singular": "{{ days }} day",
      "plural": "{{ days }} days"
    },
}
Run Code Online (Sandbox Code Playgroud)