Ответ 1
Вы не должны использовать module.exports
, когда работаете с модулями ES; module.exports
является частью модулей CommonJS, а не частью модулей EcmaScript.
Свертывание, экспорт напрямую
Ваш правильный модуль сворачивания будет просто:
export * from './test1';
export * from './test2';
Затем, чтобы использовать rollup:
import * as rollup from './combined';
// or `import { test1, test2 } from './combined'`;
// or any other valid import
rollup.test1();
rollup.test2();
Слияние, добавление объектов пространства имен
Если вы хотите экспортировать test1 и test2 с дополнительным пространством имен, используйте синтаксис export {}
:
import * as test1 from './test1';
import * as test2 from './test2';
export { test1, test2 };
Тогда использование будет:
import * as rollup from './combined';
rollup.test1.test1();
rollup.test2.test2();
Накопитель, используя разные имена экспорта
Вы также можете перенаправлять имена с помощью as
, если у вас есть конфликт имен, как с import
:
export { test1 as t1 } from './test1';
export { test2 as t2 } from './test2';
Тогда использование будет:
import * as rollup from './combined';
rollup.t1();
rollup.t2();