Ответ 1
Если вы хотите создать один файл JavaScript, который не использует внутренние модули ES6, поэтому вы можете использовать его с браузерами / node сегодня, тогда я рекомендую использовать Esperanto (полное раскрытие, я сторонник проекта). Это позволяет вам создать пакет, который объединяет все файлы вместе без использования загрузчика, например, вы использовали бы что-то вроде браузера или webpack. Обычно это приводит к уменьшению кода (без загрузчика), более эффективному устранению мертвого кода (при использовании minifier, таком как Google Closure Compiler или UglifyJS) и лучшей производительности, поскольку интерпретатор JS лучше способен оптимизировать результат.
Вот пример использования, но обратите внимание, что есть множество инструментов для интеграции Esperanto в ваш рабочий процесс:
var fs = require( 'fs' );
var esperanto = require( 'esperanto' );
esperanto.bundle({
base: 'src', // optional, defaults to current dir
entry: 'mean.js' // the '.js' is optional
}).then( function ( bundle ) {
var cjs = bundle.toCjs();
fs.writeFile( 'dist/mean.js', cjs.code );
});
Этот пример взят из страницы при подключении модулей ES6.