【发布时间】:2019-03-08 20:10:42
【问题描述】:
我们正在使用 Angular 来可视化 AG 网格。我们希望将 ag 网格的标题翻译成用户的语言。
银格代码:
<ag-grid-angular class="ag-theme-material" [rowData]="productionOrders">
<ag-grid-column [headerName]="'ORDERS.GRID.EntryCode' | translate" field="entry"></ag-grid-column>
<ag-grid-column [headerName]="ORDERS.GRID.EntryDescription" field="entryDescription"></ag-grid-column>
</ag-grid-angular>
我们可以用同样的方式在我们的 html 页面上翻译一个值:
<span>{{ 'ORDERS.Status' | translate}}</span>
我注意到,在加载翻译时,ag grid 不会注意到翻译何时加载。然而,html 页面本身的值会被翻译。
额外信息:ngx-translate 的翻译管道是一个“不纯”管道,这意味着它的值可以改变(例如,当所有翻译都加载时)
同样,当使用没有翻译的 headerName 时,它不会得到更新:
银格代码:
<ag-grid-angular class="ag-theme-material" [rowData]="productionOrders">
<ag-grid-column [headerName]="bindedString" field="entry"></ag-grid-column>
</ag-grid-angular>
this.lazyString = 'test-1';
setTimeout(() => {
this.lazyString = 'test-2';
}, 3000);
标题名称永远不会更新为“test-2”
【问题讨论】:
-
你是否将“翻译”管道导入到 moudle.ts 中?如果你不确定你可以看看这个视频:youtube.com/watch?v=Ara2cQ4IQxA
-
是的,我也在同一页面上使用翻译管道,所以应该没问题。
标签: angular typescript ag-grid