AngularJs: показать номер версии из git или bower


Я создал приложение Angular, где я хочу показать номер текущей версии моего приложения на экране. В настоящее время я реализовал его как константу:

application
    .constant('constants', {
        VERSION: '1.1.2'
    });
Но это потребует от меня обновления константы на каждой новой версии. Я использую bower и git, и мне было интересно, есть ли способ получить номер версии в качестве переменной из одного из этих пакетов динамически?
1 3

1 ответ:

Решение заключается в использовании плагинаGulp иgulp-ng-constant . Это позволит автоматизировать процесс выпуска, напишите версию вашего приложения в угловой постоянную службу.

  • Установить Глоток
  • установить gulp-ng-constant
  • напишите свою задачу gulp следующим образом и запустите ее gulp constants:
var gulp = require('gulp');
var ngConstant = require('gulp-ng-constant');

gulp.task('constants', function() {
  // get version from bower file
  var bower = require('./bower.json');
  // set version to ng contants
  var constants = { version: bower.version };

  return ngConstant({
      constants: constants,
      stream: true,
      name: 'app.constants'
    })
    // save ngConstant.js to src/app/
    .pipe(gulp.dest('./src/app'));
});

Он будет генерировать угловой.модуль для вас следующий:

angular.module("app.constants", [])
  .constant("version", "0.0.1")

И последний шаг, который вам нужно сделать, - это ввести сгенерированный вами постоянный сервис в ваш основной приложение:

var app = angular.module('app', ['app.constants']);

Вы также можете быть заинтересованы в использовании задачи gulp-bump для автоматического увеличения версии вашего приложения, прежде чем оно будет добавлено в службу ng-constant.

Смотрите следующий учебник: управление версиями вашего углового приложения с помощью Gulp