node.js - ako spustiť watch skript v priestore pnpm


Ak mám takúto štruktúru

packages
  - alice
  - bar
  - foo
package.json

alice, bar, foo sú tri subbalíky. bar je závislosťou pre alice. Každý subbalík má vo svojom package.json definovaný vlastný watch skript. Teraz, keď pridám skript ako pnpm -r run watch, zasekne sa to, pretože watch skript sa nedokončí a pnpm čaká, kým sa každý príkaz nedokončí predtým, než spustí ďalší. Takže môžeme pridať parallel, aby sa spustili paralelne, napríklad pnpm -r --parallel run watch, ale stále sa objaví chyba pri prvom spustení, pretože bar nie je dokončený a alice nemôže správne vyriešiť bar. pozri github

Takže existujú nejaké obchádzky, aby to fungovalo.

Zistil som, že Manage Monorepo s pnpm, mal ten istý problém, a myslím si, že nenašiel elegantný spôsob, ako to vyriešiť.

A zistil som, že najlepšie použitie je pnpm -r --parallel --filter=./packages/** run dev, a funguje to, nemám tušenie, prečo vitest jednoducho funguje

Súvisiace články