如何使用 Visual Studio 代码根据 babel/ES7 stage-0 规则对 JavaScript 文件进行 lint?
我只需要 lint 代码。我已经有 webpack 转译 Js 文件。
如何使用 Visual Studio 代码根据 babel/ES7 stage-0 规则对 JavaScript 文件进行 lint?
我只需要 lint 代码。我已经有 webpack 转译 Js 文件。
我如何进行:
npm install -g eslint
npm install --save-dev babel-eslint
npm install --save-dev eslint-plugin-react
.eslintrc
在您的根目录中创建文件。这是我的配置:
{
"env": {
"browser": true,
"node": true,
"es6": true,
"jest": true,
"jquery": true
},
"parser": "babel-eslint",
"parserOptions": {
"ecmaVersion": 6,
"sourceType": "module",
"ecmaFeatures": {
"arrowFunctions": true,
"binaryLiterals": true,
"blockBindings": true,
"classes": true,
"defaultParams": true,
"destructuring": true,
"forOf": true,
"generators": true,
"modules": true,
"objectLiteralComputedProperties": true,
"objectLiteralDuplicateProperties": true,
"objectLiteralShorthandMethods": true,
"objectLiteralShorthandProperties": true,
"octalLiterals": true,
"regexUFlag": true,
"regexYFlag": true,
"spread": true,
"superInFunctions": true,
"templateStrings": true,
"unicodeCodePointEscapes": true,
"globalReturn": true,
"jsx": true,
"experimentalObjectRestSpread": true
}
},
"plugins": [
"react"
],
"rules": {
"strict": 0
}
}
settings.json
) 并写入:
{
//disable default javascript validator replaced by eslint
"javascript.validate.enable" : false
}
现在,它应该根据需要对您的 ES7 代码进行 lint。如果 VSC 读取 eslint 配置有任何问题,您可以在 VSC 控制台 ( Ctrls ShiftU) 中查看。
PS:可能是我.eslintrc
为 ES7 linting 使用了一些无用的额外数据,所以请随意删除它:)
由于 ESLint 扩展可以使用 babel-eslint,安装它并在用户/工作区设置中关闭 vscode 的内置 linting。
这是使用 Create React App 的 eslint 配置 + 可选链接的示例设置:
.vscode/settings.json
:
{
"javascript.validate.enable": false,
"eslint.enable": true
}
.eslintrc
:
{
"extends": "react-app"
"parser": "babel-eslint",
}
.babelrc
:
{
"plugins": ["@babel/plugin-proposal-optional-chaining"]
}
这是要为此设置安装的所有 npm 包:
npm install --save-dev eslint-config-react-app babel-eslint@10.x @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint@5.x eslint-plugin-flowtype@2.x eslint-plugin-import@2.x eslint-plugin-jsx-a11y@6.x eslint-plugin-react@7.x eslint-plugin-react-hooks@1.5.0 @babel/core @babel/plugin-proposal-optional-chaining
对于那些刚接触 React 或 babel 的人,除非你真的在使用 Create React App,否则你需要更多的 babel 配置。如果您需要帮助,请仅将上述内容用作补充信息和评论。