wie kann ich npm 3 zwingen, verschachtelte Abhängigkeiten zu installieren?

Ich habe gerade ein Upgrade auf @ durchgeführnpm version 3 und stellte fest, dass eine der größten Änderungen darin besteht, ein @ zu erzwingflacher Abhängigkeitsbaum.

Ihre Abhängigkeiten werden jetzt maximal flach installiert. Soweit dies möglich ist, werden alle Ihre Abhängigkeiten und ihre Abhängigkeiten sowie IHRE Abhängigkeiten in @ Ihres Projekts installiernode_modules Ordner ohne Verschachtelung. Sie werden nur dann Module sehen, die untereinander verschachtelt sind, wenn zwei (oder mehr) Module widersprüchliche Abhängigkeiten haben.

So zum Beispiel, wenn PaketA ist abhängig von packageB, wenn dunpm install A Sie erhalten diese Dateistruktur:

--- root/
 |--- node_modules/
   |--- A/
   |--- B/

anstelle der alten Dateistruktur ab Version 2:

--- root/
 |--- node_modules/
   |--- A/
     |--- node_modules/
       |--- B/

Das erste (und ich bin sicher nicht das letzte) Problem, auf das ich gestoßen bin, war das folgende:

PackageA kennt das Verhalten von npm v3 nicht und ist abhängig von packageB. AberA nimmt die alte (v2) Dateistruktur an, da es @ hnode_modules/B in seinem Code anstelle des richtigen../node_modules/B. Nun der Code vonA wird nicht kompiliert, weil es nach @ sucB/ im falschen Verzeichnis.

Wenn ich den Entwickler nicht dazu bringen möchte, den Code zu reparieren und auf ein Update von @ zu wartA, Ich frage mich, ob es eine Möglichkeit gibt, eine Option festzulegen, die die Installation von npm erzwingt.Abhängigkeiten von @ in einem eigenennode_modules Ordner, genauso wie es npm v2 getan hätte.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage