gpt4 book ai didi

npm - 如何修复 ESLint 中的意外 token ?

转载 作者:行者123 更新时间:2023-12-03 15:04:31 32 4
gpt4 key购买 nike

我使用命令 npm install -g eslint 全局安装 ESLint在我的 Mac 上。安装成功,但是当我运行 eslint -v这是我遇到的问题:

$ npm install -g eslint
path/to/bin/eslint -> path/to/lib/node_modules/eslint/bin/eslint.js
+ eslint@7.3.1
added 107 packages from 63 contributors in 4.823s

$ eslint -v
path/to/lib/node_modules/eslint/bin/eslint.js:93
} catch {
^

SyntaxError: Unexpected token {
at createScript (vm.js:80:10)
at Object.runInThisContext (vm.js:139:10)
at Module._compile (module.js:617:28)
at Object.Module._extensions..js (module.js:664:10)
at Module.load (module.js:566:32)
at tryModuleLoad (module.js:506:12)
at Function.Module._load (module.js:498:3)
at Function.Module.runMain (module.js:694:10)
at startup (bootstrap_node.js:204:16)
at bootstrap_node.js:625:3
我想知道导致此问题的缺少哪些步骤?我正在使用 Node.js v8.16.2 和 NPM v6.4.1。

最佳答案

发生错误是因为 } catch {是一个相对较新的 (ES2019) 语言功能,称为 "optional catch binding" ;在引入之前,需要在语法上绑定(bind)捕获的错误(例如 } catch (err) { )。根据 node.green ,您至少需要 Node 10 才能拥有该语言功能。
那么为什么在 ESLint 中会发生这种情况呢?例如the release blog ,版本 7 已放弃对 Node 8 的支持;他们不再针对该版本进行测试,并且将假定支持更现代的语言功能。
要修复它,要么:

  • 升级节点(节点 8 为 out of LTS,这就是 ESLint 放弃支持的原因);或
  • npm install eslint@6 (使用 -g 如果你想全局安装)使用旧版本的 ESLint 支持 Node 8。
  • 关于npm - 如何修复 ESLint 中的意外 token ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62636329/

    32 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com