运行maildev时出错 - logger.info(`收到关机信号,现在关机...`)

时间:2017-06-07 15:30:33

标签: javascript node.js npm-install

尝试在终端中运行maildev命令时出现上述错误。我以前工作过,但由于我需要重新启动机器,所以它不会启动。我卸载并重新安装但仍然没有运气。

这是完整的错误。提前感谢您的任何帮助。

$ maildev
/usr/local/lib/node_modules/maildev/index.js:92
    logger.info(`Recieved shutdown signal, shutting down now...`)
                ^
SyntaxError: Unexpected token ILLEGAL
    at exports.runInThisContext (vm.js:73:16)
    at Module._compile (module.js:443:25)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at Object.<anonymous> (/usr/local/lib/node_modules/maildev/bin/maildev:7:17)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)

1 个答案:

答案 0 :(得分:1)

您获得的错误是语法错误,而不是关机信号。您正在运行不支持template literals的旧版本Node,maildev正在该记录器消息中使用该版本。因此,当它尝试记录该行时,Node崩溃。

模板文字是ES6语言功能,只有较新版本的Node支持。它们的行为类似于使用反引号的字符串,而不是单引号或双引号。它们允许您直接在字符串中计算表达式和变量。

console.log(`Hello ${name}, the ${job}!`)

解决方案是将您的Node版本升级到至少4.0.0或更高版本。如果您无法升级Node,请考虑使用不使用版本0.11等ES6语法的旧版maildev。