jspm предварителна обработка (инжектиране на настройки за целевата среда) при групиране

Има ли начин за предварителна обработка на .js файловете (т.е. инжектиране на специфични за средата настройки) при групиране с помощта на buildStatic?


person CraigM    schedule 03.10.2015    source източник


Отговори (1)


Не знам за начин за предварителна обработка на js файлове по време на групиране, но можете да имате различни файлове/модули за различни среди и да използвате JS API, за да размените вашата версия за разработка с производствената:

gulp.task('jspm', function() {
  var builder = new jspm.Builder();

  function production(builder) {
    var systemNormalize = builder.loader.normalize;
    builder.loader.normalize = function(name, parentName, parentAddress) {
      if (name === 'ember') name = 'ember/ember.prod';
      if (name === './app-config.dev') name = './app-config.prod';

      return systemNormalize.call(this, name, parentName, parentAddress);
    };
  }

  production(builder);

  return builder.loadConfig('./config.js')
    .then(function() {
      return builder.buildStatic('app/main', 'dist/app.min.js', { sourceMaps: false, minify: false, mangle: false});
    });
});

app-config.dev.js и app-config.prod.js са модули, които използвате в цялото приложение и които предоставят вашите специфични за средата настройки. Във вашия код винаги трябва да импортирате app-config.dev. Прочетете повече за този работен процес в публикацията в моя блог: Как да използвате SystemJS кукички за изграждане на производствена версия на вашето приложение

person Oleksii Rudenko    schedule 03.10.2015
comment
Благодаря много - това е страхотно. - person CraigM; 05.10.2015