javascript - 使用 $translate 时获取所选语言

标签 javascript angularjs angular-translate

我已经从 here 设置了 $translate 项目在我的 angularjs 应用程序中。

在我的 app.config() 中,我已将默认语言设置为 $translateProvider 但如何在 langCtrl 中获取所选语言? $translate 有 get 函数吗?

angular.module('app').config(['$translateProvider', function($translateProvider) {
  $translateProvider.useStaticFilesLoader({
      prefix: 'locale-',
      suffix: '.json'
  });
  $translateProvider.preferredLanguage('en');
}]);

angular.module('app').controller('langCtrl', ['$scope', '$translate',
    function ($scope, $translate) {

        $scope.lang = ''; //here I need to set the selected language

        $scope.setLanguage = function (langKey) {
            $translate.use(langKey);
        };
}]);

最佳答案

来自official doc我们可以知道,通过 $translate.use() 我们可以确定当前使用的语言。

(...)

use([key])

If no or a falsy key is given it returns the currently used language key. The returned string will be undefined if setting up $translate hasn't finished.

关于javascript - 使用 $translate 时获取所选语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45044406/

相关文章:

angularjs - Restangular - 如何使用 GET 方法访问此 API?

javascript - Angular 数据是 Angular 缓存的依赖项还是反之亦然?

javascript - 在 Controller 中使用 Angular 翻译,用于服务带来的数据

angularjs - 模板中绑定(bind)文本中的问号

javascript - Javascript+OpenLayers 中的侧边栏

Javascript - DomParser - 如何确定非 XML 字符串

javascript - 如何使用 MongoDB 和 Jade (Express.js) 通过 _id 删除文档?

angularjs - UI-Router state.go回调状态更改

javascript - 使用 jquery 根据模式验证输入框并在出现错误时显示 div

javascript - 如何将渲染指令的结果作为变量传递给 Angular 翻译