ECMAScript-модули в Node.js: новый план

Текущий статус поддержки ECMAScript-модулей (ESM) в Node.js:



В октябре Modules Team опубликовала "План по реализации Новых Модулей". Этот пост объясняет, что в нем содержится.


Фазы


Процесс разделен на три фазы:



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


Фаза 1: минимальное ядро поддержки ESM в Node.js


Упрощение идентификаторов модулей


Одна из целей Modules Team это достижение "браузерной эквивалентности": Node.js должна быть близка по поведению к браузерам, насколько это возможно. Ядро достигает этого путем упрощения разбора идентификаторов модулей (URL-ов, указывающих на модули):



Принесение важных возможностей CommonJS в ES-модули



Совместимость



import {createRequireFromPath as createRequire} from 'module';
import {fileURLToPath as fromPath} from 'url';
const require = createRequire(fromPath(import.meta.url));

const cjsModule = require('./cjs-module.js');


Фаза 2 и дальнейшие планы



Когда я смогу пользоваться ES-модулями в Node.js?



Часто задаваемые вопросы



Благодарность


Спасибо Майлсу Боринсу за его отзывы об этом посте.


Дополнительные источники для дальнейшего чтения


@justboris
22.12.2018 02:27 UTC
Первоисточник