diff --git a/doc/api/readline.md b/doc/api/readline.md index 443d89f8b49390..b4ac0b3bf5f264 100644 --- a/doc/api/readline.md +++ b/doc/api/readline.md @@ -303,61 +303,6 @@ paused. If the `InterfaceConstructor` was created with `output` set to `null` or `undefined` the prompt is not written. -### `rl.question(query[, options], callback)` - - - -* `query` {string} A statement or query to write to `output`, prepended to the - prompt. -* `options` {Object} - * `signal` {AbortSignal} Optionally allows the `question()` to be canceled - using an `AbortController`. -* `callback` {Function} A callback function that is invoked with the user's - input in response to the `query`. - -The `rl.question()` method displays the `query` by writing it to the `output`, -waits for user input to be provided on `input`, then invokes the `callback` -function passing the provided input as the first argument. - -When called, `rl.question()` will resume the `input` stream if it has been -paused. - -If the `InterfaceConstructor` was created with `output` set to `null` or -`undefined` the `query` is not written. - -The `callback` function passed to `rl.question()` does not follow the typical -pattern of accepting an `Error` object or `null` as the first argument. -The `callback` is called with the provided answer as the only argument. - -An error will be thrown if calling `rl.question()` after `rl.close()`. - -Example usage: - -```js -rl.question('What is your favorite food? ', (answer) => { - console.log(`Oh, so your favorite food is ${answer}`); -}); -``` - -Using an `AbortController` to cancel a question. - -```js -const ac = new AbortController(); -const signal = ac.signal; - -rl.question('What is your favorite food? ', { signal }, (answer) => { - console.log(`Oh, so your favorite food is ${answer}`); -}); - -signal.addEventListener('abort', () => { - console.log('The food question timed out'); -}, { once: true }); - -setTimeout(() => ac.abort(), 10000); -``` - ### `rl.resume()`