我想为控制台输出(console.log('%cTest', 'color: lime')
)设置样式以进行调试,因此我需要确定脚本是否在VSCode中运行。可能吗?
澄清:我想要“同构”代码,该代码可以检测它是否在VSCode中运行,并在VSCode中运行彩色console.log输出,或者不运行常规console.log
。
最佳答案
实际上,您需要检测控制台是否支持颜色(及其支持颜色的程度),而不是嗅探是否从VSCode启动了Node.js程序。
要实现此要求,可以使用npm模块supports-color:
// Code example taken from supports-color document
const supportsColor = require('supports-color');
if (supportsColor.stdout) {
console.log('Terminal stdout supports color');
}
if (supportsColor.stdout.has256) {
console.log('Terminal stdout supports 256 colors');
}
if (supportsColor.stderr.has16m) {
console.log('Terminal stderr supports 16 million colors (truecolor)');
}
关于node.js - 如何判断node.js应用程序环境支持样式/彩色控制台输出?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56923640/