Làm việc với Nodemon, Trình giám sát Node.js

Nodemon là một tiện ích giao diện dòng lệnh hỗ trợ xây dựng các ứng dụng Node.js bằng cách tự động khởi động lại ứng dụng nút khi nó xác định các thay đổi tệp trong thư mục.
Bài viết này sẽ hướng dẫn bạn cách cài đặt và cấu hình gật đầu cho phù hợp với nhu cầu cụ thể của bạn, cũng như khám phá một lỗi phổ biến xảy ra khi sử dụng gật đầu
Mục Lục
Tại sao bạn nên sử dụng Nodemon
Khi phát triển máy chủ web hoặc ứng dụng phụ trợ, bạn nhất định phải thay đổi mã của mình để xử lý lỗi và cải thiện cấu trúc cũng như logic của chương trình.
Nodemon hỗ trợ bằng cách tự động khởi động lại máy chủ khi bạn thay đổi mã của nó. Điều này giúp tiết kiệm thời gian và cho phép gỡ lỗi dễ dàng hơn.
Cách cài đặt Nodemon
Bạn có thể cài đặt Nodemon cục bộ dưới dạng phụ thuộc phát triển hoặc trên toàn cầu trên đường dẫn hệ thống.
Để cài đặt gật đầu trên toàn cầu, hãy chạy lệnh npm sau trong thiết bị đầu cuối của máy tính của bạn:
npm install nodemon --globally
Để cài đặt nodemon cục bộ, bạn nên chạy lệnh npm sau bên trong thư mục dự án trong thiết bị đầu cuối của mình:
npm install nodemon --save-dev
Bắt đầu Nodemon trong ứng dụng máy chủ web của bạn
Bắt đầu gật đầu và làm cho nó xem ứng dụng máy chủ web của bạn bao gồm một vài bước. Khối mã dưới đây là tập lệnh cơ bản cho máy chủ ghi thông báo chuỗi vào bảng điều khiển:
const express = require('express');
const app = express();app.listen((5000), ()=>{
console.log(`I'm learning about nodemon`)
});
Để bắt đầu xem tập lệnh này, hãy chạy lệnh gật đầu theo sau là tên của tệp cần xem:
nodemon app.js
Đầu ra kết quả phải bao gồm một cái gì đó giống như văn bản sau:
[nodemon] starting `node app.js`
I'm learning about nodemon
Khi gật đầu đã bắt đầu thành công, mọi thay đổi đối với app.js tệp sẽ khiến toàn bộ ứng dụng máy chủ tải lại.
Bạn có thể thoát gật đầu bằng cách nhấn Ctrl + C trong thiết bị đầu cuối của máy tính của bạn. Bạn cũng có thể khởi động lại quy trình gật đầu theo cách thủ công bằng cách nhập rs chỉ huy.
Sử dụng Nodemon với các tùy chọn dòng lệnh
Nodemon có một số tùy chọn dòng lệnh mà bạn có thể sử dụng để sửa đổi hành vi của nó.
Để xem danh sách tất cả các tùy chọn gật đầu có sẵn và chức năng của chúng, hãy chạy lệnh này:
nodemon --help options
Trong số nhiều tùy chọn có sẵn là;
- –sự chậm trễ: Khi một tệp thay đổi, gật đầu sẽ đợi một giây theo mặc định trước khi khởi động lại quá trình. Bạn có thể chỉ định độ trễ khác với —sự chậm trễ công tắc. Bạn có thể chọn khoảng thời gian gật đầu sẽ đợi trước khi khởi động lại. Ví dụ:
nodemon --delay five app.js - –Làm lơ: Tùy chọn chuyển đổi bỏ qua cho phép bạn bỏ qua các tệp cụ thể trong ứng dụng máy chủ web của mình. Bạn có thể sử dụng tùy chọn chuyển đổi như vậy:
nodemon --ignore lib/app.js - –đồng hồ: Theo mặc định, khi chạy, nodemon giám sát thư mục làm việc hiện tại. Để kiểm soát tùy chọn đó, hãy sử dụng —đồng hồ tùy chọn để thêm đường dẫn tệp cụ thể và thay đổi thư mục nào đang được xem. Ví dụ, giám sát một thư mục máy chủ:
nodemon --watch server - –exec: Mặc dù là một tiện ích JavaScript, nhưng bạn cũng có thể sử dụng Nodemon để xem các tệp không phải JavaScript như TypeScript, Python và Golang. Bạn có thể dùng —giám đốc điều hành tùy chọn để nhận chức năng tải lại tự động của gật đầu trong các tập lệnh như vậy. Ví dụ: sử dụng gật đầu trong tập lệnh TypeScript:
nodemon --exec ts-node - –ext: Theo mặc định, Nodemon tìm kiếm các tệp có phần mở rộng JavaScript, TypeScript, CoffeeScript và JSON. Điều này là do các dự án Node.js có thể hoạt động với các tệp TypeScript và CoffeeScript biên dịch thành JavaScript thuần túy trước khi được thực thi. Mặt khác, các tệp JSON cũng được theo dõi vì chúng thường được sử dụng để lưu trữ siêu dữ liệu cho các dự án Node.js. Bạn có thể dùng –e (hoặc là —mở rộng) chuyển sang chỉ định danh sách tệp được phân tách bằng dấu phẩy để xem. Ví dụ: để theo dõi các tệp có phần mở rộng .js, .jsonvà .mjs:
nodemon --ext js,json,mjs
Sử dụng tệp cấu hình Nodemon
Nodemon hỗ trợ các tệp cấu hình cục bộ và toàn cầu. Bạn có thể tìm thấy chúng trong thư mục chính của bạn hoặc thư mục gốc của dự án; chúng thường được gọi là gật đầu.json các tập tin. Bằng cách này, bạn có thể lưu các cấu hình gật đầu của mình và dễ dàng sử dụng lại chúng với các dự án khác.
Tùy chọn dòng lệnh sẽ luôn ghi đè cài đặt tệp cấu hình. Thứ tự ưu tiên làm việc bao gồm các tùy chọn dòng lệnh, cục bộ và tệp cấu hình.
Tệp cấu hình có thể sử dụng bất kỳ tùy chọn dòng lệnh nào làm giá trị khóa JSON.
Ví dụ:
{
"watch": [ "server" ],
"ext": [ "js", "ts", "json" ],
"delay": "5000",
"ignore": [ "lib/app.js" ]
}
Ở trên gật đầu.json tập tin, gật đầu được đặt để xem người phục vụ thư mục, chỉ định các tập tin với .js, .ts, và .json phần mở rộng, sự chậm trễ cho 5 giây trước khi khởi động lại sau khi thay đổi tệp và cuối cùng bỏ qua các thay đổi tệp trong lib/app.js.
Thay vào đó, gật đầu hỗ trợ sử dụng gói.json cho cấu hình nếu bạn giữ tất cả các cấu hình gói ở một vị trí. Dưới gật đầuConfig trong tệp pack.json, hãy chỉ định cấu hình ở định dạng giống như định dạng của bạn đối với tệp cấu hình.
Ví dụ: tệp pack.json này bao gồm cấu hình giống như tệp gật đầu.json ở trên:
{
"name": "nodemon",
"version": "",
"description": "",
"nodemonConfig": {
"watch": [
"server"
],
"ext": [ "js", "ts", "json" ],
"delay": "5",
"ignore": [
"lib/app.js"
]
}
}
Xử lý lỗi Nodemon
Trong khi bạn đang phát triển ứng dụng của mình, bạn sẽ cần phải xử lý các lỗi trong JavaScript trong quá trình này. Để xử lý những lỗi này, trước tiên bạn cần biết tại sao chúng lại xảy ra.
Đây là một lỗi phổ biến mà bạn có thể gặp phải khi làm việc với gật đầu:
[nodemon] app crashed - waiting for file changes before starting...
Có một số lý do khiến thông báo lỗi này có thể xảy ra và một số cách để khắc phục nguyên nhân.
- Cú pháp JavaScript sai trong các tệp gật đầu đang xem. Để ngăn chặn lỗi này, hãy xem qua mã JavaScript của bạn để xác định bất kỳ lỗi cú pháp nào trong đó.
- Chạy nhiều tác vụ trong nền có thể ảnh hưởng đến tác vụ cụ thể này. Hãy thử dừng tất cả các tiến trình nền và chạy lại chương trình để khắc phục điều này.
- Tổ chức thư mục không chính xác cũng có thể gây ra vấn đề. Ví dụ: không có tệp app.js và pack.json trong cùng một thư mục. Đảm bảo rằng bạn cấu trúc đúng thư mục của mình để nó không ảnh hưởng đến việc chạy các chương trình của bạn.
Cảm thấy thoải mái với Nodemon
Bạn đã thấy tính hữu ích của gật đầu và cách nó có thể tạo ra quy trình làm việc tốt hơn, giảm lỗi và giúp gỡ lỗi nhanh hơn và dễ dàng hơn.
Tuy nhiên vẫn có thể xảy ra lỗi khi làm việc với gật đầu. Là một nhà phát triển, việc tìm hiểu cách khắc phục những lỗi này là rất quan trọng.