Как собрать пакет NPM в monorepo? - PullRequest
0 голосов
/ 20 марта 2020

Проблема

Невозможно запустить CRA, поскольку он пытается загрузить нетранслируемый пакет из node_modules.

У меня есть монорепо с этой структурой

monorepo
|__packages
   |____storybook
   |____componentA

Разработка

Чтобы видеть изменения в компоненте A в Storybook после каждого сохранения, я настраиваю main ключ в пакете . json, указывая на некомпилированный код. Storybook переносит код при каждом сохранении и показывает результаты в реальном времени.

// package.json in componentA 
"main": "src/index.js"

Публикация

При публикации компонента A в NPM я сохраняю перенесенный код в папку dist.

Использование

После установки пакета в приложении CRA (за пределами monorepo) приложение загружает ComponentA из node_modules/componentA/src/index.js, который не переносится, поэтому я получил ошибку Unexpected token из-за JSX. В этом случае я хочу импортировать переданный код из dist .

// desired behaviour after installation in a project
"main": "dist/index.js"`

Есть мысли о том, как сохранить живую перезагрузку в Storybook и разрешить импорт библиотеки в другие проекты?

...