【问题标题】:How to debug command line input in WebStorm如何在 WebStorm 中调试命令行输入
【发布时间】:2017-04-30 20:17:33
【问题描述】:

我有这个简单的程序:

process.stdin.once("data", function (data) {
    console.log("You said your name is " + data);
    process.stdin.pause();
});
console.log("What is your name?");
process.stdin.resume();

现在我在回调中放了一个断点:

然后运行程序,console 标签打开了:

但是无论我在这个console 选项卡中在终端中输入什么,都不会触发断点。这个console 选项卡似乎不是用于接受用户输入的终端。

【问题讨论】:

  • 我用谷歌搜索了如何关闭这个愚蠢的功能 30 分钟....谢谢

标签: node.js webstorm jetbrains-ide


【解决方案1】:

在调试时,确保没有按下控制台工具栏上的“使用控制台输入”切换按钮 - 当按下它时,控制台处于“实时”模式,所有输入的表达式都被计算,因此标准输入被禁用。

【讨论】:

  • 是的,就是这样,非常感谢!你是说所有输入的表达式都被评估 - 使用什么范围?因为例如函数require不可用,在这个环境中,但是encodeURI可用
  • 它是当前执行范围 - 与在调试器中评估表达式时使用的相同
  • 我不明白为什么全局require 不可用。或者它是没有应用特定功能的独立 v8 引擎的执行上下文?
  • hm,我创建了another question 来调试它。你能看一下吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-25
  • 2017-09-22
  • 2018-07-15
相关资源
最近更新 更多