首页 > 解决方案 > Angular 5 i18n 管道指令使用?

问题描述

我有一个 i18n 管道,但我不知道如何让它在模板中转换数组项。

这是模板组件:

import {Component, OnInit, Input} from '@angular/core';

@Component({

  selector: 'sa-big-breadcrumbs',
  template: `
   <div><h1 class="page-title txt-color-blueDark">
   <i class="fa-fw fa fa-{{icon}}"></i>{{items[0]}}
   <span *ngFor="let item of items.slice(1)">> {{item}} </span>
</h1></div>
  `,
})
export class BigBreadcrumbsComponent implements OnInit {

  @Input() public icon: string;
  @Input() public items: Array<string>;


  constructor() {}

  ngOnInit() {
  }

}

这是使用选择器的 HTML:

<div class="row">
  <sa-big-breadcrumbs [items]="['Forum General View']" icon="comment" class="col-xs-12 col-sm-7 col-md-7 col-lg-4"></sa-big-breadcrumbs>
  <sa-stats></sa-stats>
</div>

我想翻译模板中的“Forum General View”

{{items[0]}}

我在简单的字符串翻译中使用管道没有问题,但翻译数组项不是我能够解决的问题。

通常,我的翻译如下所示:

<a href="#"><i class="fa fa-lg fa-fw fa-comments"></i> {{'Forum' | i18n}}</a>

感谢您的帮助!

鲍勃

标签: angular

解决方案


我是OP。事实证明,i18n Pipe 工作正常。问题是由于翻译服务没有保留语言。一旦我修复了持久性,管道就可以在我需要的任何地方工作。

鲍勃


推荐阅读