代码之家  ›  专栏  ›  技术社区  ›  Serhii Shliakhov

在调试模式下使用终端套件包webstorm

  •  0
  • Serhii Shliakhov  · 技术社区  · 6 年前

    我正在尝试调试webstorm中的代码(shift+f9),并得到错误“错误:终端无法运行”

    var term = require( 'terminal-kit' ).terminal ;
    
    var history = [ 'John' , 'Jack' , 'Joey' , 'Billy' , 'Bob' ] ;
    
    var autoComplete = [
        'Barack Obama' , 'George W. Bush' , 'Bill Clinton' , 'George Bush' ,
        'Ronald W. Reagan' , 'Jimmy Carter' , 'Gerald Ford' , 'Richard Nixon' ,
        'Lyndon Johnson' , 'John F. Kennedy' , 'Dwight Eisenhower' ,
        'Harry Truman' , 'Franklin Roosevelt'
    ] ;
    
    term( 'Please enter your name: ' ) ;
    
    var input = await term.inputField(
        { history: history , autoComplete: autoComplete , autoCompleteMenu: true }
    ).promise ;
    
    term.green( "\nYour name is '%s'\n" , input ) ;
    process.exit() 
    

    当我在终端中运行相同的代码时,一切正常

    1 回复  |  直到 6 年前
        1
  •  1
  •   lena    6 年前

    您的代码失败 SyntaxError: await is only valid in async function 为了我。。。无论如何,我认为发生错误的原因是Webstorm中的节点控制台不是tty,因为节点进程是通过输入/输出流重定向启动的。 您可以通过为node.js启用终端控制台来解决这个问题。为此,请尝试以下操作:

    • 选择 帮助查找操作… 在主菜单上;
    • 类型 registry 定位 登记处
    • 找到 nodejs.console.use.terminal 在那里键入并启用它。

    enter image description here

    这应该能解决问题

    自2018年2月以来,该密钥在所有IDES中都可用,但您需要 J.N. 已安装插件