2014-10-19 1 views
1

Ux.locale.Manager 클래스를 사용하여 현지화를 구현하고 있습니다. 드롭 다운에서 언어를 변경하고 .updateLocale(value) 메서드를 호출하고 window.location.reload()을 사용하여 페이지를 다시로드하면 이전 기본 언어가 다시 선택됩니다.Extjs에서 로컬 리 제이션을 구현하는 방법 4.2

구현하는 가장 좋은 방법은 무엇입니까?

listeners : { 
    afterrender : function(component) { 
     var url = window.location.search, 
      urlParams = Ext.Object.fromQueryString(url); 
     if (urlParams.language) component.setValue(urlParams.language); 
    }, 
    change : function(cb, value) { 
     Ux.locale.Manager.updateLocale(value); 
    } 
} 

을 그리고 당신은 전에 URL에 언어 매개 변수를 추가해야합니다 :

답변

0

하나의 옵션은 다음과 같이 당신의 URL에서 언어 매개 변수를 감지하는 몇 가지 코드 언어 선택에 afterrender 리스너를 추가하는 것입니다 그것을 다시로드하십시오.

옵션 2 : 당신은 쿠키와 같은 일을 할 수

listeners : { 
    afterrender : function (component) { 
     var language = Ext.util.Cookies.get("language"); 
     if (language) { 
      component.setValue(language); 
     } 
    }, 
    change : function(cb, value) { 
     Ux.locale.Manager.updateLocale(value); 
     Ext.util.Cookies.set("language", value); 
    } 
} 
관련 문제