繁体   English   中英

解决 eslint(node/no-unsupported-features/es-syntax) - 如何在 ESLint 中支持 JavaScript 模块?

[英]Resolve eslint(node/no-unsupported-features/es-syntax) - How to support JavaScript modules in ESLint?

我正在用 JavaScript/Redux 编写游戏。 我无法配置我的 .eslintrc.json 文件以使其支持最新的 JavaScript 语法 - 我收到一条消息说

“尚不支持导入和导出声明” eslint(node/no-unsupported-features/es-syntax)。

我已经阅读了 ESLint 的官方配置文档,并在过去几个小时内尝试了(我认为是所有)组合(更改环境、ecmaVersions、解析器和解析器选项)。

我尝试过的最新一件事是安装一个 babel-eslint 解析器,所以目前我的 .eslintrc.json 看起来像这样:

{
  "extends": ["airbnb-base", "prettier", "plugin:node/recommended"],
  "plugins": ["prettier"],
  "env": {
    "es2020": true
  },
  "parser": "babel-eslint",
  "parserOptions": {
    "ecmaVersion": 2020,
    "sourceType": "module"
  },
  "rules": {
    "prettier/prettier": "error"
  }
}

还有我的 package.json:

{
  "name": "astroman-game",
  "version": "1.0.0",
  "description": "",
  "private": true,
  "scripts": {
    "build": "webpack",
    "start": "webpack-dev-server --open",
    "eslint": "eslint ./"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "@babel/core": "^7.5.5",
    "@babel/preset-env": "^7.5.5",
    "babel-eslint": "^10.0.3",
    "babel-loader": "^8.0.6",
    "eslint": "^6.1.0",
    "eslint-config-airbnb-base": "^14.0.0",
    "eslint-config-node": "^4.0.0",
    "eslint-config-prettier": "^6.10.0",
    "eslint-plugin-import": "^2.18.2",
    "eslint-plugin-node": "^11.0.0",
    "eslint-plugin-prettier": "^3.1.2",
    "prettier": "^1.19.1",
    "webpack": "^4.39.3",
    "webpack-cli": "^3.3.7",
    "webpack-dev-server": "^3.8.0"
  },
  "dependencies": {
    "redux-starter-kit": "^0.6.3"
  }
}

但这也没有解决问题。 我感谢您的帮助!

您正在从用于 NodeJS 的plugin:node/recommended扩展。 Node 只支持require() ,这是 CommonJS 风格的导入。 您的前端应用程序没有理由使用这组建议。

extends列表中删除plugin:node/recommended

"extends": ["airbnb-base", "prettier"],

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM