在"karma init"上获取"line.slice()"错误

Dav*_*arr 7 javascript node.js karma-runner

我开始阅读"开发AngularJS Edge",我想设置正在使用的各种框架.

这本书使用了nodejs和karma,以及其他几个框架.

我在Win7x32上.

我刚刚将nodejs升级到最新的v0.10.18.

我用"npm install -g karma"安装了Karma软件包.这似乎成功完成.

然后我运行了"karma init",它执行了以下操作:

    % karma init
> 
readline.js:507
  this.line = this.line.slice(this.cursor);
                        ^
TypeError: Cannot call method 'slice' of undefined
    at Interface._deleteLineLeft (readline.js:507:25)
    at suggestNextOption (C:\Users\David\AppData\Roaming\npm\node_modules\karma\lib\init.js:167:9)
    at nextQuestion (C:\Users\David\AppData\Roaming\npm\node_modules\karma\lib\init.js:235:12)
    at process (C:\Users\David\AppData\Roaming\npm\node_modules\karma\lib\init.js:250:10)
    at Object.exports.init (C:\Users\David\AppData\Roaming\npm\node_modules\karma\lib\init.js:352:6)
    at Object.<anonymous> (C:\Users\David\AppData\Roaming\npm\node_modules\karma\bin\karma:25:37)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
Run Code Online (Sandbox Code Playgroud)

请注意,此错误几乎与此人一个月前报告的堆栈跟踪相同,但该报告未收到任何响应.

mal*_*ich 7

可能你正在使用Git Bash终端,MinTTY,它没有完全支持TTY.

您有4个选项可以解决问题:

  1. 将CMD终端与Windows shell一起使用(默认的Windows控制台)
  2. 将CMD终端与Bash shell一起使用("C:\Program Files\Git\bin\bash.exe" --login -i在cmd终端中执行)
  3. 使用Powershell(Windows环境中通常默认安装的备用终端)
  4. 使用替代终端(或开发一个新终端:stuck_out_tongue_winking_eye :)

如果您只需要执行隔离的交互式命令karma init,我建议选择1,然后再回到Git Bash.但是我会尝试一下Powershell.


Tha*_*aka 2

在 Cygwin 中运行 npm 时出错的原因似乎是 npm 的一个已知问题。您可以使用此处提到的解决方法,

/sf/answers/1570533961/