Trong số các mô-đun tích hợp, có một mô-đun “ dòng đọc ” mô-đun đọc dữ liệu từ dòng luồng có thể đọc được theo từng dòng một cách tuần tự. Mô-đun này còn chứa một số phương thức thực hiện các chức năng đặc biệt như “createInterface()” tạo giao diện đường đọc, “cursorTo()” di chuyển con trỏ, “emitKeypressEvents()” phản hồi các sự kiện bàn phím và nhiều phương thức khác.
Bài viết này sẽ chứng minh hoạt động của dòng đọc “emitKeypressEvents()” trong Node.js.
Readline “emitKeypressEvents()” hoạt động như thế nào trong Node.js?
Các ' phátKeypressEvents() ” là phương thức được xác định trước của mô-đun “readline” phản hồi các sự kiện trên bàn phím và phát ra chúng dựa trên phím được nhấn. Nó phản hồi với tất cả các lần nhấn phím từ bàn phím như Enter, phím định hướng và nhiều phím khác trong khi xử lý dòng lệnh.
Cú pháp
Cú pháp tổng quát của “emitkeypressEvents()” như sau:
readline. phát raKeypressSự kiện ( suối [ , giao diện ] )
Các tham số được sử dụng trong cú pháp của “ phátKeypressEvents() ” phương pháp được giải thích dưới đây:
- suối: Nó đại diện cho luồng có thể đọc được từ đó dữ liệu được đọc.
- giao diện: Đây là một tham số tùy chọn chỉ định luồng “có thể đọc được” đã được tạo.
Giá trị trả về: “emitKeypressEvents()” không trả về bất cứ thứ gì.
Bây giờ hãy sử dụng phương thức “emitKeypressEvents()” một cách thực tế.
Ví dụ: Áp dụng phương thức “emitKeypressEvents()” để xử lý sự kiện bàn phím
Ví dụ này áp dụng phương thức “emitKeypressEvents()” để in ra phím được nhấn và các thuộc tính của nó:
hằng số dòng đọc = yêu cầu ( 'dòng đọc' ) ;bảng điều khiển. nhật ký ( 'Nhấn phím bất kỳ trên bàn phím' )
readline. phát raKeypressSự kiện ( quá trình. stdin ) ;
nếu như ( quá trình. stdin . isTTY )
quá trình. stdin . setRawMode ( ĐÚNG VẬY ) ;
quá trình. stdin . TRÊN ( 'nhấn phím' , ( str, phím ) => {
nếu như ( chìa khóa. Điều khiển == ĐÚNG VẬY && chìa khóa. tên == 'c' ) {
quá trình. lối ra ( )
}
bảng điều khiển. nhật ký ( str )
bảng điều khiển. nhật ký ( chìa khóa )
} )
Giải thích đoạn code trên như sau:
- Thứ nhất, “ yêu cầu() ” phương thức nhập mô-đun “readline” trong dự án Node.js hiện tại.
- Tiếp theo, “ console.log() ” hiển thị câu lệnh được trích dẫn trong màn hình đầu ra.
- Sau đó, “ phátKeypressEvents() ” cho phép các sự kiện bàn phím phản hồi với bất kỳ thao tác nhấn phím nào trong luồng đầu vào.
- Bây giờ, “ quá trình.stdin ” thuộc tính được nối với thuộc tính “ .TRÊN ” sự kiện bàn phím để phản hồi khi nhấn bất kỳ phím nào trên bàn phím.
- Trong định nghĩa của hàm mũi tên gọi lại, “ nếu như ” điều kiện xác định một khối mã chỉ định một điều kiện: nếu “ Điều khiển Phím ” được nhấn và bằng “ ĐÚNG VẬY ” thì quy trình đã cho sẽ thoát bằng cách sử dụng “ quá trình.exit () ' phương pháp.
- Cuối cùng, “ console.log() Phương thức ” in ra “ str ' và ' chìa khóa ” giá trị đối số.
đầu ra
Thực hiện tới “ chỉ mục.js ” bằng cách sử dụng lệnh nêu dưới đây:
chỉ số nút. jsĐầu ra sau đây hiển thị phím được nhấn cùng với thuộc tính của nó. Để thoát khỏi quá trình nhấn nút “ Ctrl+C ' phím tắt:
Đó là tất cả về hoạt động của “emitKeypressEvents()” trong Node.js.
Phần kết luận
Dòng đọc “ phátKeypressEvents() Phương thức ” hoạt động trên sự kiện bàn phím trong khi nhấn bất kỳ phím bàn phím nào vào luồng có thể đọc được. Phương pháp này phát hiện phím bàn phím và phát ra thuộc tính của nó. Sẽ rất hữu ích khi làm việc trong dòng lệnh để phản hồi bằng cách nhấn phím bàn phím. Bài đăng này đã giải thích hoạt động của phương thức readline “emitKeypressEvents()” trong Node.js.