Как правильно настроить Yarn-Workspaces

мой проект получил следующую структуру

project-root
- common-modules
    - build-modules
        - packageA
        - packageB
    - packageC
    - packageD
- services
    - packageE -> needs packageA, packageC / devDependency on packageD
    - packageF -> needs packageB, packageC / devDependency on packageD

У каждого пакета и корня проекта есть package.json со всеми определенными зависимостями и devDependencies.

Как правильно настроить мой проект с рабочими пространствами пряжи?

Мне нужна не одна node_modules папка в каждом пакете, а одна в корне проекта.

Установка package.json в корневом каталоге проекта с помощью

"workspaces": [
    "common-modules/build-modules/*", 
    "common-modules/packageC",
    "common-modules/packageD",
    "services/*"
]

не сработало, потому что я даже не смог собрать packageE, поскольку скрипт gulp не мог требовать devDependency.


person svennergr    schedule 02.10.2018    source источник
comment
Я не уверен, как работает gulp. Но поскольку вы используете рабочие области yarn, то добавление зависимостей для packageE будет с помощью команд yarn workspace packageE add packageA@^1.0 и yarn workspace packageE add packageC@^1.0. Просто замените примеры номеров версий на правильные.   -  person Isaac Pak    schedule 17.11.2018