Apabila memasang pakej dengan npm, anda mungkin menghadapi ralat yang berkaitan dengan peer tanggungan. Ini kerana npm 7 dan ke atas kini memasang kebergantungan rakan sebaya secara automatik, tidak seperti versi sebelumnya. Walau bagaimanapun, jika anda sudah memasang versi berbeza pergantungan rakan sebaya, ia boleh menyebabkan konflik.
Bendera --legacy-peer-deps telah diperkenalkan untuk memulihkan gelagat npm v4-v6, di mana kebergantungan rakan sebaya tidak dipasang secara automatik. Ini boleh berguna apabila anda ingin mengelakkan konflik dan mengekalkan versi sedia ada bagi kebergantungan rakan sebaya anda.
Menggunakan --legacy-peer-deps disyorkan dalam perkara berikut senario:
Walaupun --legacy-peer-deps boleh menyelesaikan isu pergantungan rakan sebaya, adalah penting untuk mengetahui potensi kelemahan:
Seperti yang dinyatakan dalam soalan, anda boleh menghadapi ralat semasa memasang pakej yang menjangkakan versi khusus kebergantungan rakan sebaya ( cth., react@'^16.8.0') semasa anda memasang versi lain (cth., react@'17.0.1'). Dalam kes sedemikian, menggunakan npm install --legacy-peer-deps akan mengabaikan konflik versi pergantungan rakan sebaya dan membenarkan pemasangan diteruskan.
Walau bagaimanapun, adalah penting untuk mempertimbangkan potensi risiko dengan teliti sebelum menggunakan --legacy- rakan sebaya dan sentiasa mengikuti amalan pembangunan yang baik, seperti memastikan kebergantungan sentiasa dikemas kini dan menguji dengan teliti.
Atas ialah kandungan terperinci Bilakah Saya Harus Menggunakan `--legacy-peer-deps` dalam npm?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!