реализовать i18n в проекте angularjs - PullRequest
0 голосов
/ 24 декабря 2018

У меня есть старый проект Angularjs версии 1.5.7.Я хочу реализовать в нем функцию i18n.Но я не могу этого сделать.Ниже приведены подробности того, что я делаю:

Я добавил библиотеку angular-translate версии 2.7.1, используя bower.

<script src="bower_components/angular-translate/angular-translate.js"></script>

Добавилнесколько строк кода в app.js для создания модуля и настройки части перевода.

 let zeppelinWebApp = angular.module('zeppelinWebApp', requiredModules)

    zeppelinWebApp.config(function($translateProvider) {
    $translateProvider.translations('US_EN', {
    'GREETING': 'Hello !',
    'DESCRIPTION': 'This is a demo app for multilingual support.',
    'LBL_SWITCH': 'Click here for switching language between spanish to english',
    'CLICK': 'Click',
  });
  $translateProvider.translations('SPANISH', {
    'GREETING': 'Hola !',
    'DESCRIPTION': 'Esta es una aplicacion de demostracion para soporte multilingue',
    'LBL_SWITCH': 'Haga clic aquí para cambiar el idioma entre espanol al Ingles',
    'CLICK': 'Click',
  });
  $translateProvider.preferredLanguage('US_EN');
    });

    zeppelinWebApp.controller('HomeCtrl', function($scope, $translate) {
  console.log('hi there');
  console.log($translate.use());
  $scope.changeLanguage = function(key) {
    $translate.use(key);
  };
});

Чтобы завершить процесс перевода, я написал фрагмент кода в файле HTML, где находится контроллеропределяется.

<div ng-controller="HomeCtrl as home" data-ng-init="initHome()">
</div>
<h3>{{'GREETING'|translate}}</h3>
      <p>{{'DESCRIPTION'|translate}}</p>
      <label>{{'LBL_SWITCH'|translate}} </label>
      <button ng-click="changeLanguage('SPANISH')"> 
{{'CLICK'|translate}}</button>
      <button ng-click="changeLanguage('US_EN')"> 
{{'CLICK'|translate}}</button>

Тот же код работает, когда я запускаю его из проекта в виде отдельного файла js и HTML.Но когда я интегрирую его с проектом Angularjs, перевод не происходит при нажатии кнопки.

Это даже не выдает ошибку.

Может ли кто-нибудь помочь с этим?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...