Okej, czyli projekt monorepo (?) z mniej więcej taką strukturą?
packages/
app/
node_modules/
src/
package.json
lib/
node_modules/
src/
package.json
Nie mam 100% pewności, ale podobny problem miałem w Reactcie, gdy dzieliłem aplikacje na mniejsze kawałki i okazało się, że miałem błędnie skonfigurowany projekt i rozwiązaniem było odpowiednie ustawienie workspaces
i zamienienie struktury w taki sposób, żeby był tylko jeden folder node_modules
w całym projekcie.
node_modules/
packages/
app/
src/
package.json // <-- Tutaj instalujemy bibliotekę "lib"
lib/
src/
package.json // <-- Tutaj wersja Vue trafia do peerDepedencies
lerna.json
package.json // <-- główny plik package.json
https://docs.npmjs.com/cli/v7/using-npm/workspaces (nie pamiętam, czy konfiguracja zależy od rodzaju pakiet menadżera npm vs yarn vs pnpm
itd trzeba byłoby to sprawdzić)
https://www.npmjs.com/package/lerna (można użyć innego narzędzia do zarządzania projektem monorepo)
Główny plik package.json
{
"private": true,
"name": "my-project",
"workspaces": [
"packages/*"
]",
"devDepedencies": {
"lerna": "..."
},
// ...
}
Konfiguracja lerna.json
{
"useWorkspaces": true,
"packages": ["packages/*"],
// ...
}
EDIT:
Multirepo :(