Я работал над моно-репозиторием PoC для системы проектирования, где я пытался визуализировать компоненты для создания эскизов с использованием примитивов реагирования + эскиза реакции.Я использую Lerna в сочетании с рабочими пространствами пряжи для управления зависимостями для различных пакетов, что означает, что структура папок выглядит следующим образом:
my-repo/
package.json
lerna.json
tsconfig.json
(...)
node_modules
packages/
react-sketchapp-package/
package.json
(...)
web-components-package/
package.json
(...)
После того, как возникли проблемы с одинаковой зависимостью (styled-components) в обоихпакеты, которые я переключил, чтобы использовать lerna в сочетании с рабочими пространствами пряжи.Это означает, что у вас есть node_modules в корне monorepo, а не в пакетах.Это решило мои проблемы, которые у меня были раньше со стилизованными компонентами, и работает как прелесть в репозитории web-component-repo, но при попытке запустить любой скрипт в Reaction-sketchapp-repo я получаю следующую ошибку:
src / Document.tsx (50,46): ошибка TS2304: не удается найти имя «context».нпм ERR!код ELIFECYCLE npm ERR!errno 2 npm ERR!@ response-sketchapp-package @ 1.0.0 машинопись: один раз: tsc
npm ERR!Статус выхода 2 npm ERR!нпм ERR!Ошибка при вводе сценария @ реакции-sketchapp-package @ 1.0.0: один раз.нпм ERR!Это, вероятно, не проблема с npm.Вероятно, есть дополнительные выходные данные регистрации.npm WARN Локальный package.json существует, но отсутствуют node_modules, вы хотели установить?
Похоже, что пакетact-sketchapp не находит зависимости node_modules после переключения на рабочие пространства Yarn.Я попытался создать символическую ссылку в пакете Reaction-sketchapp-пакет на node_modules, используя:
ln -s ../../node_modules ./node_modules
Но это тоже не сработало, проблема все та же ...
Так как этоМой первый опыт работы с Lerna и рабочими пространствами. Я собираюсь пересмотреть мои шаги и посмотреть, есть ли какие-либо конфигурации, которые я пропустил, но если у кого-то есть какие-либо идеи, как решить эту проблему, это было бы очень полезно!