2017-10-26 6 views
1

Ich habe ein Repo ausgecheckt, das Garn statt NPM als Bauwerkzeug verwendet.Funktionieren Garnarbeitsplätze auch mit npm?

im package.json es Arbeitsbereiche definiert, mit mehreren Teilprojekte befassen:

{ 
    "workspaces": [ 
    "packages/*" 
    ], 
    "dependencies": [], 
    "devDependencies": [ 
    // long list 
    ] 
} 

Als Ergebnis der Wurzel package.json enthält keine Laufzeitabhängigkeit. Nur die packages/*/package.json enthalten diese.

zu kompilieren (und in dev-Modus starten) ich:

yarn install 
yarn start 

Ich habe keine Dokumentation gefunden, dass workspaces wird auch erkannt und korrekt von NPM verwendet.

Gibt es eine Möglichkeit, es auch mit npm arbeiten zu lassen?

+0

Npm eine [Arbeitsplatz Funktion] hat (https://www.npmjs.com/package/npm-workspace), aber dort heißt die Konfigurationsdatei workspace.json –

Antwort

1

Die Verwaltung von Abhängigkeiten in einem Monorepo wird bei npm nicht unterstützt. Das Paket Lerna wird verwendet, um JavaScript-Projekte mit Querabhängigkeiten zu verwalten. Ich glaube, Lerna verwendet Garn unter der Haube, aber mit Yarn als Paketmanager Ihres Projekts wird diese Funktion sofort unterstützt.

Hier ist ein Repo, das hilfreich sein könnte, um zu sehen, wie Garn und Lerna zusammenarbeiten: https://github.com/Quramy/lerna-yarn-workspaces-example

Verwandte Themen