Как интегрировать Angularjs + Bootstrap + angular.translate - PullRequest
0 голосов
/ 29 октября 2018

Angularjs и Bootstrap работают в системе без проблем, мне нужно также реализовать angular-translate.

я называю переводом архивов в HTML:

<script src="js/angular-translate.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/angular-translate-loader-static-files/2.17.0/angular-translate-loader-static-files.min.js"></script>

Пример использования:

<div ng-controller="myCtrl">
  <label>{{ 'Hello World' | translate }}</label>
</div>
  • архив angular-translate.min.js находится в правильной папке

В документе js я принимаю параметр перевода:

myApp.controller('myCtrl', function ($scope, $element, $compile, $timeout, $translate) {
$translate.use('es');}

В файле main.js для сценария onload есть проблема, потому что я не знаю, является ли это правильным способом его реализации:

script.onload = function () {
    try{
        if (angular) {
            var mainApp = angular.module('myApp', ['pascalprecht.translate']);

            mainApp.config(['$translateProvider', function ($translateProvider) {
                $translateProvider.useStaticFilesLoader({
                    prefix: '../translations/translation_',
                    suffix: '.txt'
                });
                $translateProvider.fallbackLanguage('es');
                $translateProvider.useSanitizeValueStrategy('escape');
                $translateProvider.forceAsyncReload(true);
            }]);

            angular.element(document).ready(function() {
                angular.bootstrap(document, ["myApp"]);
            });
        }
    }catch(err){}
}
  • .txt документ имеет ключ 'Hello World' и правильную испанскую традукцию
...