默认情况下,在把输出写入到提供的可写流(默认为 process.stdout
)之前,[repl.REPLServer
] 实例会使用 [util.inspect()
] 方法对输出进行格式化。
showProxy
检查选项会默认设置为 true,colors
选项会设置为 true,具体取决于 REPL 的 useColors
选项。
可以在构造时指定 useColors
布尔值选项,以指示默认的编写器使用 ANSI 样式代码来着色来自 util.inspect()
方法的输出。
如果 REPL 作为独立程序运行,则还可以使用 inspect.replDefaults
属性从 REPL 内部更改 REPL 的检查默认值[util.inspect()
],该属性是 [util.inspect()
] 中的 defaultOptions
的镜像。
> util.inspect.replDefaults.compact = false;
false
> [1]
[
1
]
>
在构造时,通过在 writer
选项传入一个新的函数,可以完全地自定义一个 [repl.REPLServer
] 实例的输出。
例子,把输入的任何文本转换为大写:
const repl = require('repl');
const r = repl.start({ prompt: '> ', eval: myEval, writer: myWriter });
function myEval(cmd, context, filename, callback) {
callback(null, cmd);
}
function myWriter(output) {
return output.toUpperCase();
}