Я работаю над библиотекой для React с бесплатными и профессиональными компонентами с накопительным пакетом для производства и веб-пакетом для разработки. Я хочу повторно использовать один компонент, но с меньшим количеством вариантов для бесплатной версии. Код ниже работал до сих пор, но если мы подумаем о поддержке ssr и tree-shaking с помощью rollup, нам придется использовать импорт es6 (по крайней мере, насколько я знаю). Любые идеи, как импортировать модуль, если он существует -> если нет - импортировать другой модуль?
let DropdownMenuComponent;
try {
DropdownMenuComponent = require("./pro/DropdownMenuProComponent").default;
} catch (err) {
DropdownMenuComponent = require("./DropdownMenuComponent").default;
}
Я пробовал динамический импорт, но он не ловил ошибки должным образом, а модуль отсутствовал.
Спасибо



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


на самом деле на этапе 3 есть предложение для динамического импорта модулей ES с помощью import(), а также доступны пресеты babel, в вашем случае это будет примерно так:
if (isProAccount())
import("./pro/DropdownMenuProComponent")
.then(DropdownMenuComponent => DropdownMenuComponent.something());
else
...
Он находится не в классе, а в верхней части файла, где следует размещать импорт.