так как я обновил angular-translate с 2.9.0 до 2.15.2, я больше не могу использовать функцию $translate.use() в своем rootScope (app.run)
Значение $translate.use() не определено при загрузке страницы. Это код, который я использую для загрузки языка и смены языка.
$rootScope.changeLanguage = function (langKey) {
if(langKey.length == 2) {
$translate.use(langKey.toLowerCase()+"_"+langKey.toUpperCase());
$rootScope.language = langKey;
} else if(langKey.length == 5) {
$translate.use(langKey);
$rootScope.language = langKey.substring(0,2);
}
};
$rootScope.changeLanguage($translate.use());
Этот код дает мне эту ошибку:
Uncaught TypeError: не удается прочитать свойство «длина» неопределенного в m.e.changeLanguage (app.js: 184)
(уменьшенный код, поэтому $rootScope переименовывается в m.e.)
Эта строка журнала дает мне следующее:
console.log("trans", $translate.versionInfo(), $translate.use());
транс 2.15.2 не определено
Как я могу заставить это работать снова?
myApp.run(['$rootScope', '$window', '$location', '$stateParams', '$api', '$translate', '$transitions', '$state', function($rootScope, $window, $location, $stateParams, $api, $translate, $transitions, $state) {
- person NVO   schedule 18.10.2017