【问题标题】:How to fix Nodemon "async remove {}" syntax error?如何修复 Nodemon “async remove {}” 语法错误?
【发布时间】:2020-04-09 07:17:16
【问题描述】:

每当我尝试运行 nodemon 来自动重启我的本地服务器(在端口 3000 上运行)时,我都会收到关于 no 中的语法错误的错误消息

/Users/SI23/.nvm/versions/node/v6.5.0/lib/node_modules/nodemon/node_modules/chokidar/index.js:151
  async remove(item) {
        ^^^^^^
SyntaxError: Unexpected identifier
    at Object.exports.runInThisContext (vm.js:76:16)
    at Module._compile (module.js:528:28)
    at Object.Module._extensions..js (module.js:565:10)
    at Module.load (module.js:473:32)
    at tryModuleLoad (module.js:432:12)
    at Function.Module._load (module.js:424:3)
    at Module.require (module.js:483:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/Users/SI23/.nvm/versions/node/v6.5.0/lib/node_modules/nodemon/lib/monitor/watch.js:6:16)
    at Module._compile (module.js:556:32)

有什么办法解决这个问题?

【问题讨论】:

  • 问题实际上是您使用的节点版本。将您的节点更新到较新的版本(强烈推荐10.15.3,以便您可以使用和谐标志,或将 chokidar 降级到与节点 v6.5.0 兼容的版本
  • 对,Node 6.5.0 已经超过 3 年了,这在 Node 世界中确实是古董
  • 好的,谢谢。我已经使用安装程序从网站安装了最新版本的 Node.js,但由于某种原因,当我通过 node -v 检查终端中的版本时,它仍然显示 6.5.0。

标签: javascript node.js nodemon


【解决方案1】:

据我所知

Async Await 在 node v6.5.0 中不可用,

您正在使用的。所以你可以升级你的节点版本,或者可以开始使用具有相同版本节点的 Promise 对象。

【讨论】:

    【解决方案2】:

    在我的例子中,npm list chokidar 帮助我意识到这是另一个使用更新版本的 chokidar 的模块 (gulp-nodemon)。降级后就可以了。

    【讨论】:

      【解决方案3】:

      我有完全相同的错误...!这是一个节点版本问题,我使用的是节点版本 6,这就是我修复它的方法:

      • nvm install &lt;VERSION_NUMBER&gt; // nvm install 10.15.3
      • nvm use &lt;VERSION_NUMBER&gt; // nvm 使用 10.15.3
      • node -v // 确认我使用的是正确版本的节点

      请记住在您的计算机上执行此操作,而不仅仅是您的代码文件,并使用 nvm alias default 10.15.3 更改默认节点版本

      你可以检查你的默认列表

      • nvm list

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-08-30
        • 2023-03-09
        • 1970-01-01
        • 2023-04-02
        相关资源
        最近更新 更多