[英]Running Node.js Readline functions
我是 Node.js 的新手,我不明白 readline 模塊是如何工作的。 這是我的代碼塊:
const { stdout } = require("process");
const {stdin} = require("process");
const readline = require('readline').createInterface({
input: process.stdin,
output: process.stdout,
});
readline.question(`What's your funny name?`, name => {
console.log(`Hi ${name}!`);
readline.close();
});
請注意,此代碼塊來自 SO 上的此位置: Node.js“readline”未按預期工作
我期待對 readline.question 的調用將暫停並等待用戶響應,但這並沒有發生。 程序繼續運行而不暫停輸入。
我也試過
process.stdin.read()
process.stdin.on("data", (data) => {
myAnswers.push(data);
askQuestions(questionNumber+1);
})
同樣,代碼不會暫停以允許用戶輸入一些文本。
任何援助將不勝感激。
這是來自官方 Node.js 文檔的示例,如果您說您的代碼不起作用,也許可以這樣嘗試:
import * as readline from 'node:readline/promises';
import { stdin as input, stdout as output } from 'node:process';
const rl = readline.createInterface({ input, output });
const answer = await rl.question('What do you think of Node.js? ');
console.log(`Thank you for your valuable feedback: ${answer}`);
rl.close();
Node.js 文檔: https://nodejs.org/api/readline.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.