Sợi plug'n'play

npm là trình quản lý gói mặc định cho Node.js. Facebook từ lâu đã phát triển một giải pháp quản lý gói thay thế có tên Yarn . Yarn dường như đang dần biến mất khỏi GitHub readmes như một giải pháp mặc định và số liệu thống kê trên trang web chính thức cho thấy rằng chỉ một phần cài đặt gói được thực hiện với Yarn. Tuy nhiên, nó đáng để nhìn ra bên ngoài hộp.


Yarn hoàn toàn tương thích với các tệp package.json hiện có, vì vậy bạn có thể dễ dàng sử dụng cả hai giải pháp trong các dự án hiện tại. Các lệnh cho hai giải pháp chỉ khác nhau một chút. Dưới đây là bảng so sánh các lệnh quan trọng nhất.:

Sự miêu tảnpmSợi
Khởi tạo npm initsợi init
Cập nhậtnpm cài đặt -g npmtự cập nhật sợi
Cài đặt góicài đặt npm
- lưu [tên]
sợi thêm [tên]
Cài đặt góicài đặt npm
--save-dev [tên]
sợi thêm
--dev [tên]
Cài đặt gói trên toàn cầunpm install -g [name]sợi toàn cầu thêm [tên]
Cài đặt tất cả các góicài đặt npmcài đặt sợi
Cập nhật tất cả các góicập nhật npmnâng cấp sợi
Gỡ cài đặt góinpm xóa [tên]loại bỏ sợi [tên]

Yarn bắt đầu với mục tiêu giải quyết một số điểm yếu của npm. Sự khác biệt rõ ràng nhất là hiệu suất cao hơn: thông qua cài đặt tăng dần, đa luồng và tính năng sát thủ mới nhất Plug'n'Play (PNP), hiệu suất tăng lên đáng kể. Plug'n'Play bác bỏ ý tưởng về thư mục node_modules dựa trên dự án, thư mục này thường có thể phát triển đến mức cao ngất ngưởng về số lượng tệp. Bạn có thể tìm hiểu thêm về điều này trong sách trắng Plug'n'Play chính thức . Chúng tôi cài đặt eslint một lần với npm và sau đó với sợi với bộ đệm được làm nóng trong từng trường hợp để tạo ra sự khác biệt rõ ràng về tốc độ (6x!):

npm 6.5.0
Sợi 1.12.3
Trở lại