穩(wěn)定性: 2 - 不穩(wěn)定
tty 模塊包含 tty.ReadStream 和 tty.WriteStream 類。多數(shù)情況下,你不必直接使用這個模塊。
當(dāng) node 檢測到自己正運行于 TTY 上下文時,process.stdin 將會是一個 tty.ReadStream 實例,并且 process.stdout 將會是 tty.WriteStream 實例。檢測 node 是否運行在 TTY 上下文的好方法是檢測 process.stdout.isTTY:
$ node -p -e "Boolean(process.stdout.isTTY)"
true
$ node -p -e "Boolean(process.stdout.isTTY)" | cat
false
如果 fd 和終端相關(guān)聯(lián)返回 true ,否則返回 false。
已經(jīng)拋棄。使用 tty.ReadStream#setRawMode()(比如process.stdin.setRawMode()) 替換。
net.Socket 的子類,表示 tty 的可讀部分。通常情況,在任何 node 程序里(僅當(dāng) isatty(0) 為 true 時), process.stdin 是 tty.ReadStream 的唯一實例。
Boolean 值,默認(rèn)為 false。它代表當(dāng)前 tty.ReadStream 實例的 "raw" 狀態(tài)。
mode 需是 true 或 false。它設(shè)定 tty.ReadStream 屬性為原始設(shè)備或默認(rèn)。isRaw 將會設(shè)置為結(jié)果模式。
net.Socket 的子類,代表 tty 的可寫部分。通常情況下,process.stdout 是 tty.WriteStream 唯一實例(僅當(dāng) isatty(1) 為 true 時)。
TTY 當(dāng)前 擁有的列數(shù)。觸發(fā) "resize" 事件時會更新這個值。
TTY 當(dāng)前 擁有的行數(shù)。觸發(fā) "resize" 事件時會更新這個值。
function () {}
行或列變化時會觸發(fā) refreshSize() 事件。
process.stdout.on('resize', function() {
console.log('screen size has changed!');
console.log(process.stdout.columns + 'x' + process.stdout.rows);
});