Первоначально опубликовано на jamischarles.com.

Когда я начал использовать node 6 лет назад, мне очень понравилась загрузка модуля в node. require() довольно прост. Вы импортируете с require() и экспортируете с module.exports.

2 года назад, когда я начал использовать синтаксис импорта / экспорта es6 на клиенте с помощью webpack, мне часто приходилось иметь дело с двумя разными загрузчиками модулей в моем коде. В конце концов мы начали использовать babel на сервере, чтобы мы могли использовать синтаксис импорта / экспорта в .es6 файлах для нашего приложения.

Мне никогда не нравилось выполнять этап сборки на сервере, и я по возможности опускаю его.

К счастью, Джон-Дэвид Далтон (создавший Lodash) создал модуль esm, который позволяет нам использовать синтаксис импорта / экспорта es6 в узле без этапа сборки.

Добавление ESM в ваш проект

Esm - это простой модуль npm.

Сначала запустим $ npm install --save esm, чтобы установить модуль.

Затем мы заменим наш входной файл на этот:

В этом случае мы переместили код нашего приложения на main.js, который теперь может содержать импорт / экспорт! 🎉 ✨

Погрузчик esm соединяет ESM сегодняшнего дня с ESM завтрашнего дня. - https://github.com/standard-things/esm

Так хорошо. Он готов к работе, быстро и без деформации.

Вы должны подписаться на меня в твиттере.