Nội dung bài viết
Video học lập trình mỗi ngày
NPM là gì?
NPM là gì? NPM là viết tắt của Node Package Manager, nếu bạn là một lập trình viên phát triển web hay node.js thì sẽ trông thấy rất quen thuộc. Hay cách khác là npm là một kho lưu trữ trực tuyến để xuất bản các dự án Node.js mã nguồn mở.
Tôi biết ở đây nếu mà giải thích theo học thuật thì chán lắm, vậy hãy để tôi giải thích theo tôi hiểu. Nôm na là giả sử một ngày nào đó bạn chăm chỉ làm việc, phát triển một ứng dụng tuyệt vời, nhưng bạn phải một vấn đề lớn và quyết định sẽ tìm một thư viện như lodash chẳng hạn. Rất may,npm
rất đơn giản để sử dụng, bạn chỉ phải chạy
$ npm install lodash
và module được chỉ định sẽ được cài đặt trong thư mục hiện tại bên dưới node_modules
. Sau khi được cài đặt vào thư mục node_modules
của bạn , bạn sẽ có thể sử dụng require()
chúng giống như chúng được tích hợp sẵn.
Đơn giản để hiểu vậy thôi, và dưới đây là 10 câu lệnh npm mà mỗi lập trình viên đều phải biết ít nhất là 8 cái. Nhưng trước tiên từ npm 6x trở lên thì có thêm command đó là npm audit
. Chúng ta tìm hiểu thêm npm audit là gì?
npm audit fix là gì?
npm audit là một lệnh được cung cấp từ npm 6x trở lên, thực hiện đánh giá bảo mật trong thời gian ngắn của
dependency
dự án của bạn. Báo cáo kiểm tra chứa thông tin về các lỗ hổng bảo mật trong phầndependency
của bạn và có thể giúp bạn khắc phục lỗ hổng bằng cách cung cấp các lệnhnpm
dễ chạy và các khuyến cáo để khắc phục sự cố khi bạn đang sử dụng một package nào đó.
Bạn có thể bắt đầu sử dụng npm audit
ngay bây giờ bằng cách cập nhật lên phiên bản npm mới nhất.
~ npm install npm -g
Cú pháp sử dụng npm audit
như sau:
npm audit [--json] [--production] [--audit-level=(low|moderate|high|critical)]
npm audit fix [--force|--package-lock-only|--dry-run|--production|--only=(dev|prod)]
common options: [--production] [--only=(dev|prod)]
Ví dụ: Ở bài "Build ứng dụng chat sử dụng express và socket.io" giờ đây tôi thử check lại dự án xem có package nào tổn thương không hén.
AnonyStick$ cd express-socketio-chatroom/
AnonyStick$
AnonyStick$
AnonyStick$ npm audit
found 0 vulnerabilities
Rất tiếc chả có sự tôn thương nào ở đây. Bạn cũng làm vậy thôi. Nếu thực sự chưa hiểu vui lòng tham khảo trang gốc của nó npmjs.
Top 10 Commands sử dụng NPM
Một số trường hợp viết tắt sau đây:
- install npm install viết tắt:
npm i
. - test: npm test viết tắt:
npm t
. - Trợ giúp: npm --help viết tắt:
npm -h
. - toàn cầu : npm --global viết tắt:
npm -g
.
npm init
Sử dụng npm init
để tạo một npm package mới. Câu lệnh này được sử dụng nhiều nhất. Khi sử dụng npm init
sẽ có nhiều câu hỏi cho anh em điền vào như description, keyword... Nếu bạn nào không muốn có một bất kỳ câu hỏi nào thì có thể sử dụng cú pháp sau:
$ npm init -y
Và khi run command này xong thì file package.json
xuất hiện.
npm install -production
Câu lệnh này dùng để cài đặt những module cần thiết cho dự án, có thể cài đặt cho dev, cho product tuỳ theo chúng ta. Ví dụ tôi muốn khởi tạo dự án express
thì có thể sử ụng như sau:
$ npm install express --save
or
$ npm i express --save
NPM Uninstall Command
Đương nhiên cài được thì phải remove được, để uninstall express trước đó đã cài thì chúng ta sử dụng câu lệnh sau:
$ npm uninstall express
NPM Update Command
Việc update những thư viện trong dự án rất cần thiết, tránh lỗhổng bảo mật, nâng cấp tính năng thì sử dụng npm cũng có thể làm được
$ npm update express
Nếu bạn muốn update hết những module trong dự án của mình thì sử dụng câu lệnh sau
$ npm update
NPM List Command
Sử dụng npm ls
xem xét và liệt kê những gói mà dự án chúng ta đã cài đặt
$ npm ls
npm config
Khi chạy npm init
một dự án mới, bạn có thể thấy mình nhập đi nhập lại các chi tiết cấu hình. Giả sử, bạn có thể là người phụ trách chính của dự án. Đôi khi để tiết kiệm thời gian, bạn có thể đặt giá trị mặc định cho các trường này, như dưới đây:
npm config set init.author.name "Anonystick"
npm config set init.author.email "Anonystick@gmail.com"
npm config set init.author.url "Anonystick.com"
npm config set init.license "MIT"
npm run
Ngoài ra các bạn cũng cố gắng tìm hiểu cách npm run
thế nào, và đây là một gợi ý:
npm run prestart
npm run start
npm run poststart
Ngoài ra chúng tôi khuyến khích các bạn xem qua Tổng hợp 150 packages và resource Node.js chất lượng cao được nhiều nhà phát triển khuyên dùng.