AngularJS: 如何在控制器中使用翻译(i18n)进行弹出?

AngularJS: How to use translation (i18n) in controller for popup?

我',在 angularjs 中编写应用程序并且必须进行国际化。一切都很好,但我做了错误处理,但问题是:我不知道如何使用控制器中的翻译来弹出窗口。

我的控制器是这样的:

function showErrorPopup($ionicPopup, $ionicHistory, $location, $translate, error) {
    if (error.status == 404) {
         errorId = ...

         $ionicPopup.show({
              title: '{{ERROR.TITLE | translate}}></span>',
              template: '{{ERROR.errorId| translate}}',
              buttons: [{ text: 'OK' }]
         });   
    }
    else if (error.data.ExceptionMessage != null || error.data.ExceptionMessage != "" || error.data.ExceptionMessage != undefined) {
        errorId = ...

        $ionicPopup.show({
              title: '{{ERROR.TITLE | translate}}></span>',
              template: '{{ERROR.errorId| translate}}',
              buttons: [{ text: 'OK' }]
         });   
    }
    else {
        errorId = ...

        $ionicPopup.show({
              title: '{{ERROR.TITLE | translate}}></span>',
              template: '{{ERROR.errorId| translate}}',
              buttons: [{ text: 'OK' }]
         });   
    }
}

这是我的控制器。这取决于结果是什么,但我总是想显示一个带有错误的弹出窗口(错误标题 = ERROR.TITLE,错误文本 = ERROR.errorId)。

ERROR 和他的 TITLE 或他的 ID(如 100、200...)在 json 文件中定义。

你能帮我解决这个问题吗? 如果您需要了解更多信息,请询问。

使用$translate服务

var translatedErrorTitle = $translate.instant(ERROR.TITLE);
var translatedErrorId    = $translate.instant(ERROR.errorId);

More info