Monorepo и проблема со сборкой пакетов

Я пытаюсь создать модульное приложение React, используя монорепозиторий (рабочие области) - в корневой папке у меня есть package.json:

{
  "private": true,
  "workspaces": ["shared/react-components", "client/react-app"],
  "scripts": {
    "start": "yarn --cwd shared/react-components build && yarn --cwd client/react-app start"
  }
}

Я хочу включить общие / реактивные компоненты (с именем, например, @ shared / response-components) в приложение client / response-app, но до того, как мне нужно будет скомпилировать общий модуль, и в этом месте я получаю неприятную ошибку:Error: 'default' is not exported by ../../node_modules/deepmerge/dist/cjs.js, imported by src/styles/dark.ts

Я запускал yarn install до того, как deepmerge стал доступен в / node_modules. Если я удалю конфигурацию рабочих пространств и запустил: yarn install && yarn build в общих / реактивных компонентах, все будет работать, поэтому кажется, что проблема в конфигурации рабочих пространств.

Скрипт сборки в общих / реактивных компонентах: rollup -c

Есть идеи, чего может не хватать?

1 ответ

Оказалось, что проблема связана с пакетом deepmerge и TSX, длинную ветку о проблемах с импортом можно найти здесь: https://github.com/TehShrike/deepmerge/issues/87 Я заменил его слиянием lodash, а мой пакеты были собраны снова.

Другие вопросы по тегам