2016-11-17 1 views
0

私は国際化を使用してプロジェクトを作成しています。ラベルは/conf/lang/lang_{{lang}}/labels.jsにあります。 .html。 app.run()のlang - rootscope変数設定。 Index.htmlと

<script ng-src="{{labelUrl}}"></script> 

app.js - 実行()このスクリプト・ファイルは、変更URLに正しくロードされますが、リフレッシュが手動での$ rootscope値が破壊したときに、スクリプトファイルには、後にロードされ

$rootScope.$on('$locationChangeStart', function (event, next, current) 
    { 

     if($cookieStore.get("config_details") != undefined) 
     { 
      $rootScope.language = $cookieStore.get("config_details").language; 
     } 
     else 
     { 
      $rootScope.language = 'english'; 
     } 
     $rootScope.labelUrl = "conf/lang/lang_"+$rootScope.language+"/labels.js"; 
}) 

HTMLコンテンツが読み込まれます。 誰かが私にこれを解決するのを助けます!

答えて

1

はいページをリロードしようとすると、すべてが破棄されます。この

var myApp = angular.module('myApp', ['ngCookies']); 

    myApp.controller('MainController', ['$scope', '$rootScope', '$cookies', '$timeout', function($scope, $rootScope, $cookies, $timeout) { 
     if ($cookies.get('lang')) { 
     $scope.debug = "Browser has got cookies"; 
     $rootScope.language = $cookies.get('lang'); 
     } else { 
     $scope.debug = "Browser does not have cookies"; 
     $timeout(function() { 
      $cookies.put('lang', 'en'); 
      $rootScope.language = 'en'; 
      $scope.debug = "Browser has got cookies"; 
     }, 2000); 
     } 
    }]); 

Example

Try angular-translate

+0

を見てくださいしかし、クッキーが利用できる権利になりますか?私はrootscopeに再割り当てすることができますか? – Indhu

+0

はい、あなたは正しいです。次に、cookieから値を取得し、以前にスコープに設定する必要があります。 –

+0

okey htmlコンテンツを読み込む前にそれを行う方法。 – Indhu

関連する問題