Я разрабатываю два пакета узлов, зарегистрированных с номером npm, и используя синтаксис es6. Каждый пакет имеет только один модуль es6, экспортирующий один класс.Освобождение источников es6 и es5 с npm
- пакет
A
не имеет зависимостей - пакет
B
зависит отA
класса А
export default class A {...}
Класс B
import A from 'A'
export default class B {...}
Каждый пакет имеет следующую структуру modules/ index.js (es6 source) index.js (commonjs source)
- Исходный код находится в
es6/index.js
- Он transpiled к ES5/CommonJS с помощью Бабеля
Вопрос
I хочу предоставить пользователям мою A и B-упаковку ges выбор для использования es6 (путем импорта класса B, который сам будет импортировать A es6 class, а не es5 A) или источники es5 (требуя функцию es5, которая сама требует функции es5 A): Каков наилучший способ ее достижения?
Что именно вы неясны? Как должна выглядеть инструкция импорта для B? – nils
Нет. Я хочу, чтобы es6 B импортировал es6 A и перетащил es5 B, чтобы потребовать transpiled es5 A. Я ищу общие рекомендации о том, как структурировать и освобождать мой код. Я нашел решение, которое я расскажу: используя опцию 'resolveModuleSource' в Babel. Но я хотел бы знать, что делают другие. –
Возможно, вас заинтересует https://github.com/rollup/rollup/wiki/jsnext:main – Bergi