Gururaj Bhandarkar
Gururaj Bhandarkar

Reputation: 292

Change the value of $translateProvider.preferredLanguage('en') from controller

I was trying to change the value of preferred language on click of a button. But I can't access the translateProvider from the the controller. How to change the value of $translateProvider.preferredLanguage() from an event in controller?

.config(['$translateProvider', function ($translateProvider) {
  $translateProvider.translations('en', {
    'TITLE': 'Title in English',
  });

  $translateProvider.translations('lo', {
    'TITLE': 'Title in Local language',
  });

  $translateProvider.preferredLanguage('en');
}]);

I don't want to fetch data from JSON i am writing every response inside the config file. Thanks :)

Upvotes: 0

Views: 1564

Answers (1)

Arno_Geismar
Arno_Geismar

Reputation: 2330

Inject $translate in your controller.

// controller
app.controller('MainCtrl', function($scope, $translate){
    $translate.use("yourlangcode"); // load your desired locale by lang code so 'en', 'lo'
}

Upvotes: 4

Related Questions