Есть ли способ препроцессировать .js-файлы (то есть встраивать конкретные настройки среды) при связывании с помощью buildStatic?jspm preprocessing (инжекционные настройки для целевой среды) при связывании
1
A
ответ
1
Я не знаю, о способе предварительной обработки файлов во расслоение плотной пакетирования, но вы можете иметь различные файлы/модули для различных сред и использовать 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. Подробнее об этом документе: How to Use SystemJS Hooks for Building a Production Version of Your App
Большое спасибо - это здорово. – CraigM