각도 변환으로 현재 언어 가져오기
컨트롤러에 현재 사용되는 언어를 가져올 수 있는 방법이 있습니까?$translateProvider
)?
에서 아무것도 찾을 수 없었습니다.$translate
서비스.
$translate.use()
게터이자 세터입니다.
문서 링크에 있는 다음 데모를 참조하십시오.
http://jsfiddle.net/PascalPrecht/eUGWJ/7/
$translate.use()
가는 길이에요.또한 비동기 로더가 실행될 때$translate.proposedLanguage()
현재 로드되었지만 아직 로드되지 않은 언어의 언어 키를 반환합니다.
angular-translate-loader-static-files를 사용하면 다음과 같은 사실을 알 수 있습니다.$translate.proposedLanguage()
반환했다undefined
기본 언어를 사용하는 경우$translate.use()
항상 제안된 언어를 반환했습니다.
그래서 다음 방법으로 수정했습니다.
var currentLang = $translate.proposedLanguage() || $translate.use();
$translate.use()
마지막으로 선택한 언어를 저장소에서 가져오기 위해 앱의 초기 로드에 작동하지 않는 것 같습니다. $translate.storage().get( $translate.storageKey() )
아니면 그냥$translate.proposedLanguage();
그$translate
service에는 라고 하는 메서드가 있습니다.preferredLanguage()
원하는 걸 돌려줄 수 있어요이 함수의 반환은 'en'과 같은 언어의 문자열입니다.
여기 내가 예를 하나 써줄게.
angular.module('traslateApp').controller('myController', ['$scope', '$translate', function($scope,$translate){
$scope.changeLanguage = function (langKey) {
$translate.use(langKey);
};
$scope.getCurrentLanguage = function () {
$translate.preferredLanguage();
};
}])
translate.currentLang은 i18n에서 현재 선택된 언어를 확인하기 위해 사용됩니다.
저는 이게 언어를 결정하는 더 좋은 방법이라고 생각합니다.
$window.navigator.language || $window.navigator.userLanguage
관련이 없을 수도 있지만 유용할 수도 있습니다.angular2+에서 현재 언어에 접근하는 방법은 다음과 같습니다.
...
import { TranslateService } from '@ngx-translate/core';
export class MyComponent implements OnInit {
constructor(private translate: TranslateService) {}
ngOnInit() {
translate.use('it');
const currentLang = this.translate.currentLang;
}
}
import { TranslateService } from '@ngx-translate/core';
export class MyComponent implements OnInit {
constructor(private translate: TranslateService)
{
translate.setDefaultLang('en');
}
언급URL : https://stackoverflow.com/questions/20444578/get-current-language-with-angular-translate
'programing' 카테고리의 다른 글
MongoDB 집약:총 레코드 수를 어떻게 얻습니까? (0) | 2023.03.20 |
---|---|
AngularJs를 통해 브라우저가 캐시를 강제로 클리어합니다. (0) | 2023.03.20 |
응용 프로그램 설정 파일 (0) | 2023.03.20 |
Next.js에서의 인증 구현 방법 (0) | 2023.03.20 |
JPA: 특정 필드만 업데이트 (0) | 2023.03.20 |