2016-08-03 9 views
1

私は、各コンポーネントが独自のstrringファイルをロードする独立したコンポーネントをほとんど持たない1つのメインアプリケーションを持っています。 私は、メインアプリケーションの設定で私はpreferrd言語を定義し、各コンポーネントでこのprefferd言語を使用することを望みます。

セッター:

$translateProvider.uses('en_EN'); 

ゲッター:

$translate.uses() === 'en_EN'? $translate.uses('de_DE') : $translate.uses('en_EN'); 

私は$ CONFIG

$translateProvider.useLoader('$translatePartialLoader', { 
      urlTemplate: './{part}/strings_{lang}.json' 
     }); 

     $translatePartialLoaderProvider.addPart('assets'); 

どのように私はtranslatePartialLoaderProviderを使用してprefferdlanguageを得ることができますに変換する使用傾けることを知っていますか? どのように私は主なアプリで設定されたprefferd言語がわかりますか?

答えて

1

ソリューション: アプリの設定であなたはアプリの実行中にそのデータを取得することができます(つまり、データが$翻訳である)prefferd言語が何であるかを知ることができないので:

.config(['$translateProvider', '$translatePartialLoaderProvider', function ($translateProvider, $translatePartialLoaderProvider) { 
     'use strict'; 

     $translatePartialLoaderProvider.addPart('./niceComponents/nice-add-and-edit-inut-text/dist/asstes/src'); 

     //default lang that will change in run 
     $translateProvider.preferredLanguage('en_US'); 

    }]) 
    .run(['$translate' , function($translate){ 
     var lan = $translate.preferredLanguage(); 
     console.log('lan---- ' + lan); 
     $translate.use(lan); 
     $translate.refresh(); 
    }]) 
は、
関連する問題