在Windows 8中从Visual Studio 2012执行程序后,Node.js控制台立即关闭

gmxoilav  于 2023-06-29  发布在  Node.js
关注(0)|答案(8)|浏览(130)

我已经在Windows 8PC上安装了Node.js,并安装了Visual Studio 2012的Node.js插件。我从Visual Studio 2012中执行了一个基本程序,它只是在控制台上打印一个字符串

consol.log("Hi There");

Node.js控制台打印“Hi There”并立即终止。有人能提供解决方案吗?
我也遇到过类似的问题,除了在代码中使用***setTimeOut()***之外,还有其他方法可以解决这个问题吗?(Why does the Node.js scripts console close instantly in Windows 8?

nsc4cvqm

nsc4cvqm1#

从Visual Studio的“调试”菜单中选择“选项”。在此之后,选择“NodeJS工具”并勾选复选框“等待输入时,进程正常退出”。

daupos2t

daupos2t2#

你可以调用一个批处理文件,而不是直接从Visual Studio执行node app.js

wait.bat app.js

wait.bat中,它只是:

node %1
pause press [enter]

或者,您可以在一行中完成此操作,或者将其 Package 在模块或函数中:

require('readline')
    .createInterface(process.stdin, process.stdout)
    .question("Press [Enter] to exit...", function(){
        process.exit();
});

它使用Node的一个当前标记为“不稳定”的模块来从stdin读取行输入。它忽略输入,然后使用exit函数关闭进程。

vof42yt1

vof42yt13#

1.从菜单栏中打开Visual Studio * 选项 * 属性页,单击工具->选项
1.在左侧菜单树中选择【Node.js Tools】→【General】
1.勾选标有“* 当进程正常退出时等待输入 *”的框

x7rlezfr

x7rlezfr4#

上一个答案:
从Visual Studio的“调试”菜单中选择“选项”。在此之后,选择“NodeJS工具”并勾选复选框“等待输入时,进程正常退出”。
...如果不进行调试就运行,似乎可以正常工作。
调试>启动而不调试Ctrl-F5

mwecs4sa

mwecs4sa5#

这些都不适合我,所以我只是在最后一行代码设置了一个断点。一个尴尬的解决方案,但做的伎俩。

fruv7luv

fruv7luv6#

一种简单的跟踪和工作方法可能是,
"Right click on project" -> Open Command Promp Here.
并使用node <filename>执行文件或使用npm start执行项目
希望这对你有帮助!

z31licg0

z31licg07#

适用于所有visual studio版本。
备选方案1

console.log('Hello world');

setTimeout(function () {
    process.exit();
}, 5000);
fgw7neuy

fgw7neuy8#

我已经检查了“C:\Program Files\nodejs\node.exe”作为“以管理员身份运行此程序”的问题。取消选中框=>固定

相关问题