6

我想要一个带有 ngTable 的多语言视图。为此,我在我的控制器中设置了一个包含我的翻译的 $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>
4

3 回答 3

13

如果您使用angularjs ~1.2with angular-translate ~2.6.1,则翻译data-title作品如下:

<td data-title="'MY_TRANSLATION_ID' | translate" >
{{product.reference}}
</td>
于 2015-03-10T08:54:58.223 回答
10

我终于找到了如何做到这一点,这个例子: https ://github.com/esvit/ng-table/issues/53

<td data-title="translate['reference']" >
   {{product.reference}}
</td>

其中 translate 是范围变量, ['reference'] 是属性

于 2014-06-24T08:04:18.657 回答
0

你也可以这样做:

<td data-title="getColumnName('your.translate.code')">{{ resultat.number }}</td>

在您的控制器中:

$scope.getColumnName = function(column) {
    return $translate.instant(column);
}
于 2016-01-26T09:34:03.873 回答