Readline phát raKeypressEvents() hoạt động như thế nào trong Node.js?

Readline Phat Rakeypressevents Hoat Dong Nhu The Nao Trong Node Js



Node.js là môi trường thời gian chạy JavaScript nổi tiếng, mã nguồn mở miễn phí để tạo các ứng dụng web động và có khả năng mở rộng cao. Nó đạt được chức năng này với sự trợ giúp của hệ thống mô-đun. Các ' mô-đun ” hệ thống là khối xây dựng của một ứng dụng cho phép các nhà phát triển sử dụng lại mã bất cứ khi nào cần. Nó được phân loại thành ba loại chính: mô-đun “tích hợp”, “cục bộ” và “bên thứ ba”.

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.