从控制器更改 $translateProvider.preferredLanguage('en') 的值

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

我试图通过单击按钮来更改首选语言的值。但是我无法从控制器访问 translateProvider。如何从控制器中的事件更改 $translateProvider.preferredLanguage() 的值?

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

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

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

我不想从 JSON 中获取数据,我将每个响应都写在配置文件中。谢谢:)

在你的控制器中注入 $translate。

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