2016-02-22 1 views
0

J'ai utilisé le chargeur de fichiers statiques de traduction angulaire pour traduire le contenu en html. Mon code fonctionne correctement lorsque la page est chargée, elle est visible dans la langue sélectionnée après le chargement lorsque je sélectionne une autre langue qu'elle ne traduit pas.Utilisation de load-files-static-translate-static-loader en html

mon code html est:

<select ng-model="selected" ng-options=" selec.Name for selec in langTable"> </select><br> 
     <span ng-bind-html="'world' |translate"></span> 

mon code angulaire est:

.config(function($translateProvider){ 
$translateProvider.useStaticFilesLoader({ 
prefix:'assets/', 
suffix:'.STRINGS' 
}); 
}) 
.controller('Ctrl', function ($scope,$translate) { 
    $scope.langTable=[{Name:'English',value:"en_US"},{Name:'France',value:"fr_FR"},{Name:'German',value:"pt_BR"}]; 
    $scope.selected=$scope.langTable[1]; 
    $translate.use($scope.selected.value); 
    console.log($scope.selected.value); 
}) 

my en_US.STRINGS contains : 
{ 
"world": "halooo worlde welcame to our new aPPP", 
"hello":"haloo" 
} 

tout mon fichier .strings contient le mot monde !!

Répondre

0

Vous devriez regarder pour changer la langue en entrée select:

<select ng-model="selected" ng-options=" selec.value as selec.Name for selec in langTable" ng-change="setLang()"> </select> 

et dans votre contrôleur:

$scope.setLang = function() { 
    $translate.use($scope.selected); 
};