'console.log'在测试Electron应用程序时无法在Webstorm中使用

Tin*_*ndt 6 javascript node.js webstorm electron

在Webstorm(Windows 7)中的"普通"节点应用程序中,我可以使用console.log写入Webstorm的控制台窗口.

一旦我使用Electron创建桌面应用程序,虽然我使用相同的节点命令'C:\ Program Files \nodejs \node.exe',但Webstorm控 主要的区别是在运行配置中我必须使用节点参数'C:\ Users\Username\AppData\Roaming \npm \node_modules\electron-prebuilt\cli.js'来获得正确的Electron入口点.

当我从Windows控制台窗口直接启动Electron应用程序时,此控制台窗口将显示所有输出.

问题可能与'cli.js'产生子进程的事实有关:

#!/usr/bin/env node

var electron = require('./')

var proc = require('child_process')

var child = proc.spawn(electron, process.argv.slice(2), {stdio: 'inherit'});
child.on('close', function (code) {
  process.exit(code);
})
Run Code Online (Sandbox Code Playgroud)

但是这个继承了stdio,因此输出应该转到同一个通道.或者我误解了什么?

Tin*_*ndt 0

好吧,似乎没有简单的解决方案,因为它可能是一个 Webstorm 错误。在这里跟踪: https: //youtrack.jetbrains.com/issue/WEB-17029。该错误已为人所知六个月了。抱歉没有早点发现(浪费了您的时间;-)。