コントローラーで現在使用されている言語を取得する方法はありますか (なし$translateProvider
)?
サービスで何も見つかりませんでした$translate
。
コントローラーで現在使用されている言語を取得する方法はありますか (なし$translateProvider
)?
サービスで何も見つかりませんでした$translate
。
angular-translate-loader-static-files を使用すると、デフォルトの言語を使用すると返され、常に提案された言語が$translate.proposedLanguage()
返されることに気付きました。undefined
$translate.use()
したがって、次を使用して修正しました:
var currentLang = $translate.proposedLanguage() || $translate.use();
$translate
サービスには、必要なものを返すというメソッドがありますpreferredLanguage()
。この関数の戻り値は、「en」などの言語の文字列です。
ここで私はあなたに例を書きました:
angular.module('traslateApp').controller('myController', ['$scope', '$translate', function($scope,$translate){
$scope.changeLanguage = function (langKey) {
$translate.use(langKey);
};
$scope.getCurrentLanguage = function () {
$translate.preferredLanguage();
};
}])