Cara menghindari menginstal paket di monorepo menggunakan Benang


10

Saya membangun monorepo menggunakan ruang kerja Lerna dan Benang .

Semuanya berfungsi dengan baik tetapi setiap kali saya menginstal dependensi baru pada sebuah paket (sebut saja dia A ) menggunakan:

yarn add <package_name>

Yarn menambahkannya dan kemudian memicu installskrip semua paket di monorepo, bahkan paket-paket yang tidak diandalkan oleh A.

Apakah ada di sana untuk menghindari ini? Butuh beberapa saat untuk menginstalnya tanpa alasan sama sekali.


Jadi Anda menggunakan paket Lerna dan Benang? Kenapa tidak hanya Lerna? Juga, sudahkah Anda mencoba menambahkan paket dengan Lerna dan menetapkan cakupan? github.com/lerna/lerna/tree/master/commands/add
kbariotis

Saya menggunakan Lerna untuk mempublikasikan dan versi paket saya dan ruang kerja Benang untuk mengelola dependensi dengan mudah. Saya mencoba saran Anda dan itu tidak berhasil. Terima kasih telah mencoba :)
Erazihel

Jawaban:


4

Coba tambahkan ke ruang kerja tertentu dengan: -

yarn workspace <workspace_name> add <package_name>

Untuk beberapa dokumen periksa di sini


Saya tidak ingin menginstal dependensi ke seluruh ruang kerja tetapi hanya untuk satu paket
Erazihel

4

Anda dapat mencoba Benang 2 dengan nodeLinker: node-modulesdi .yarnrc.yml. Benang 2 menjamin untuk memicu pembangunan kembali hanya pada paket-paket yang ketergantungannya berubah, ini adalah sesuatu yang tidak dijamin oleh Benang 1. Namun, masih akan ada kasus yang sangat jarang terjadi ketika paket-paket yang tampaknya tidak terkait dibangun kembali jika mereka diangkat secara berbeda setelah menambahkan paket baru , tetapi ini akan terjadi sangat jarang.


Saya mencoba saran Anda tetapi tampaknya hasilnya sayangnya masih sama ...: /
Erazihel

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.