Angular 的多语言界面

Multilingual interface with Angular

我正在为我的应用程序使用 angular-translate,有些情况我不知道如何处理。 我想像这样翻译控制器中的内容:

控制器:

 $scope.liveHint = function (param) {

if ($scope.setActionType === 1) {          
            $scope.text = "something";
  }         
else if($scope.setActionType === 2){

 $scope.text = "something New";
}
}  

Html

<p ng-show="text">{{text}} </p>  

我不知道如何带条件翻译。

有什么想法吗?

这可以通过多种方式完成

在控制器中翻译

在你的控制器中注入 $translate 服务

if($scope.setActionType === 1) {
    $scope.text = $translate.instant("key_name_of_something")
}
else {
    $scope.text = $translate.instant("key_name_for_something_new")
}

翻译使用服务是异步的,虽然我们可以使用$translate.instant但是根据你的需要改变它

文档 - http://angular-translate.github.io/docs/#/guide/03_using-translate-service

查看

<p ng-show="text">{{text}} </p>

在视图中翻译

控制器

if($scope.setActionType === 1) {
    $scope.text = "key_name_of_something"
}
else {
    $scope.text = "key_name_for_something_new"
}

查看

<p ng-show="text">{{text | translate}} </p>
or
may be this will also work, you can try
<p ng-show="text" translate>{{text}}</p>

文档

http://angular-translate.github.io/docs/#/guide/04_using-translate-filter

http://angular-translate.github.io/docs/#/guide/05_using-translate-directive