我想要一个带有ngTable的多语言视图。为此,我在我的控制器中设置了包含我的traductions的$ scope.translate(一个有效的json)。在我看来,我想设置我的数据标题,如{{translate.code}}等...
我的观点:
<table ng-table="tableParams" class="table ng-table-responsive">
<tr ng-repeat="product in $data">
<td data-title="'{{translate.code}}'" > <!-- display : {{translate.code}} -->
{{product.code}}
</td>
<td data-title="['translate.reference']" > <!-- display : empty -->
{{product.reference}}
</td>
<td data-title="'Label'" >
{{product.label}}
</td>
<td data-title="'Size'" ng-show="manageSizeColor == true">
{{product.size}}
</td>
<td data-title="'Quantity'" >
<ac-quantity minquantity="1" cquantity="product.quantity"></ac-quantity>
</td>
<td data-title="'Price'">
<b>{{product.price + currency}}</b>
</td>
</tr>
</table>
答案 0 :(得分:13)
如果您将angularjs ~1.2
与angular-translate ~2.6.1
一起使用,data-title
上的翻译就是这样的:
<td data-title="'MY_TRANSLATION_ID' | translate" >
{{product.reference}}
</td>
答案 1 :(得分:10)
我终于找到了这个例子,用这个例子: https://github.com/esvit/ng-table/issues/53
<td data-title="translate['reference']" >
{{product.reference}}
</td>
其中translate是范围变量,['reference']是属性
答案 2 :(得分:0)
你也可以这样做:
<td data-title="getColumnName('your.translate.code')">{{ resultat.number }}</td>
在你的控制器中:
$scope.getColumnName = function(column) {
return $translate.instant(column);
}