Search code examples
angularjsangular-translate

angular-translate service is not translating for first time


I´m using angular-translate $translate service to translate the title and meta description tags content dinamically according to the page (for SEO purposes).

I have a function that is called when a select combobox component with the language changes:

$scope.changeLanguage = function (langKey) {
            $scope.langKey = langKey;
            $translate.uses(langKey);
            $rootScope.title = $translate('PAGE_TITLE');

            tmhDynamicLocale.set(langKey).then(function (){
                LocationService.setLangKey($scope.langKey);                     
                $window.moment.lang(langKey);    
            });
        };

All my application content is translated but the title.

My application default language is english. When I change to spanish (for first time) it´s not translating. After that, if I change to english and then to spanish again it works. All next times will work.


Solution

  • I think I have fixed it this way:

    $translate.uses(langKey).then(function() {
         $rootScope.title = $translate('PAGE_TITLE');
    });