NPM
- Quản lý các gói nhưng không làm cho cuộc sống dễ dàng thực hiện bất kỳ.
NPX
- Một công cụ để thực hiện các gói Node.
NPX
đi kèm với NPM
phiên bản5.2+
NPM
tự nó không chỉ đơn giản là chạy bất kỳ gói. nó không chạy bất kỳ gói nào trong thực tế. Nếu bạn muốn chạy gói bằng NPM, bạn phải chỉ định gói đó trong package.json
tệp của mình .
Khi các tệp thực thi được cài đặt thông qua các gói NPM, NPM liên kết với chúng:
- cài đặt cục bộ có "liên kết" được tạo tại
./node_modules/.bin/
thư mục.
- cài đặt toàn cầu có "liên kết" được tạo từ
bin/
thư mục toàn cầu (ví dụ /usr/local/bin
) trên Linux hoặc %AppData%/npm
trên Windows.
Tài liệu bạn nên đọc
NPM:
Người ta có thể cài đặt một gói cục bộ trên một dự án nhất định:
npm install some-package
Bây giờ hãy nói rằng bạn muốn NodeJS thực thi gói đó từ dòng lệnh:
$ some-package
Những điều trên sẽ thất bại . Chỉ cài đặt trên toàn cầu gói có thể được thực hiện bằng cách gõ tên của họ chỉ .
Để sửa lỗi này và để nó chạy, bạn phải nhập đường dẫn cục bộ:
$ ./node_modules/.bin/some-package
Về mặt kỹ thuật, bạn có thể chạy gói được cài đặt cục bộ bằng cách chỉnh sửa packages.json
tệp của mình và thêm gói đó trong scripts
phần:
{
"name": "whatever",
"version": "1.0.0",
"scripts": {
"some-package": "some-package"
}
}
Sau đó chạy tập lệnh bằng cách sử dụng npm run-script
(hoặc npm run
):
npm run some-package
NPX:
npx
sẽ kiểm tra xem có <command>
tồn tại trong $PATH
hoặc trong các nhị phân dự án cục bộ hay không và thực hiện nó. Vì vậy, với ví dụ trên, nếu bạn muốn thực thi gói được cài đặt cục bộ, some-package
tất cả những gì bạn cần làm là gõ:
npx some-package
Một ưu điểm lớn khác npx
là khả năng thực thi gói chưa được cài đặt trước đó:
$ npx create-react-app my-app
Ví dụ trên sẽ tạo ra một bản react
tóm tắt ứng dụng trong đường dẫn mà lệnh đã chạy và đảm bảo rằng bạn luôn sử dụng phiên bản mới nhất của trình tạo hoặc công cụ xây dựng mà không phải nâng cấp mỗi khi bạn sử dụng nó.
Câu hỏi liên quan:
- Làm thế nào để sử dụng gói được cài đặt cục bộ trong node_modules?
- NPM: làm thế nào để nguồn ./node_modules/.bin thư mục?
- Làm thế nào để bạn chạy một tệp js bằng cách sử dụng tập lệnh npm?
create-react-app
là một máy phát điện.npx
đi vào internet , tải gói tạm thời để nó có thể thực hiện nó ( np x ). Những gì bạn nhận được (và muốn) là đầu ra, được lưu cục bộ, nơi bạn đã chạy lệnh.