node.js - miten suorittaa watch-skripti pnpm-työtilassa
Jos minulla on tällainen rakenne
packages
- alice
- bar
- foo
package.json
alice, bar, foo ovat kolme alipakettia. bar on alice-paketin riippuvuus. Jokaisella alipaketilla on oma watch-skripti määriteltynä package.json-tiedostossa. Nyt, kun lisään skriptin kuten pnpm -r run watch, se jumittuu, koska watch-skripti ei lopu ja pnpm odottaa jokaisen komennon valmistumista ennen seuraavaan siirtymistä. Joten voimme lisätä parallel ajaaksemme ne rinnakkain, kuten pnpm -r --parallel run watch, mutta silti ensimmäisellä ajolla tulee virhe, koska bar ei ole valmis, eikä alice voi ratkaista baria oikein. katso github
Onko siis olemassa mitään kiertoteitä tämän saamiseksi toimimaan.
Huomaan, että Manage Monorepo pnpm:llä, hänellä oli sama ongelma, ja luulen, ettei hän löytänyt eleganttia tapaa ratkaista tätä.
Ja huomaan, että vitestin käyttö on parasta pnpm -r --parallel --filter=./packages/** run dev, ja se toimii, en ole lainkaan varma miksi vitest vain toimii