Термин Node.js и бэкенд обновлено

Dual package hazard: что это

Коротко

Dual package hazard: ситуация, когда пакет поставляет отдельные ESM- и CJS-сборки, и в одном приложении одна часть кода загружает его через import, а другая через require. Пакет выполняется дважды, у копий своё состояние, и проверки instanceof или синглтоны ломаются.

Определение

Ситуация, когда пакет поставляет отдельные ESM- и CJS-сборки, и в одном приложении одна часть кода загружает его через import, а другая через require. Пакет выполняется дважды, у копий своё состояние, и проверки instanceof или синглтоны ломаются.

Подробнее

Лечат тонкой ESM-обёрткой над CJS-сборкой или поставкой только одного формата.

Из урока «CommonJS и ES-модули в Node.js»

Публиковать библиотеку, где ESM- и CJS-сборка держат разное состояние (dual package hazard): один и тот же пакет загрузится дважды.

Читать урок целиком

Запомните, а не прочитайте

В тренажёре карточка вернётся, когда начнёт забываться. А билеты по Node.js и бэкенд проверят, что термин понятен в деле.