외부 모듈이 기본 모듈에서 내 $translateProvider.translation
을 변경하려고합니다. 내 애플 리케이션을위한 "tranlation 플러그인"으로 이것을 참조하십시오.Angular translate 기존 번역 확장
번역을 변경하는 것 같아서 $translate
서비스가 불가능합니다.
mymodule.service('MyService', function ($translateProvider) {
var lib = function() {
//EDITED FOR BREVITY
this._registerTranslations = function (ctrl) {
if (!ctrl.i18n) return;
for (var name in ctrl.i18n) {
/////////////////////////////
// THIS IS THE PLACE, OBVIOUSLY PROVIDER IS NOT AVAILABLE!!!!
$translateProvider.translations(name, ctrl.i18n[name]);
//////////////////////////////
}
};
//EDITED FOR BREVITY
};
return new lib();
});
누구나 밝은 아이디어가 있습니까? AngularJS와 워드 프로세서 (https://docs.angularjs.org/guide/providers)에서
안녕하세요, @Pascal, 실제로 사용자가 자신의 컨트롤을 만들고 i18n을 지정할 수있는 UI 디자이너가 있습니다. 이 컨트롤은 데이터베이스에 직렬화됩니다. 나는 앱이 초기화 된 후에 컨트롤을 잡아서'.config()'에 접근 할 수 없다. 이게 정말 틀린거야? '$ translate.translations = translations;를 추가하는 것은 효과가 있지만 마음에 들지 않는 것 같습니다 ... 어쨌든 코드를 변경하지 않고이 유스 케이스를 구현할 수 있습니까? – Jmorvan
angular-translate는 실제로 angular-translate를 먼저 말해야하며, 번역을 정적으로 등록하거나 비동기 로더를 사용하여 작업하기 전에 먼저 작업해야하는 번역을 디자인해야합니다. 저는 github에 관한 문제로 돌아가서 팀이 그것에 대해 어떻게 생각하는지 봅니다. – PascalPrecht