ESLint 尊重 VS Code jsconfig.json baseUrl 和路径

Eva*_*kas 7 reactjs eslint visual-studio-code

jsconfig.json我的 VS Code 中有一个文件:

{
  "compilerOptions": {
    "target": "ES6",
    "module": "commonjs",
    "allowSyntheticDefaultImports": true,
    "baseUrl": "./src/",
    "paths": {
      "*": ["*"],
      "components/*": ["components/*"]
    }
  },
  "exclude": ["node_modules", "**/node_modules/*"]
}
Run Code Online (Sandbox Code Playgroud)

paths帮助我有更短的导入语句。我的代码构建得很好,但是我如何告诉 eslint 尊重这些设置?

import React from 'react';

export default () => <div>Hello guys</div>;
Run Code Online (Sandbox Code Playgroud)

和我的./src/App.js

import React from 'react';
import HelloWorld from 'components/HelloWorld';

const App = () => (
  <div className="App">
    <header className="App-header">
      <h1 className="App-title">Welcome to React</h1>
    </header>
    <p className="App-intro">
      To get started, edit <code>src/App.js</code> and save to reload.
    </p>
    <HelloWorld />
  </div>
);

export default App;
Run Code Online (Sandbox Code Playgroud)

然而,我的第二行有一个红色的波浪线。我如何配置我的 eslint 以尊重jsonfig.json?禁用此规则将是最后的手段。

基本上我想在本教程中使用绝对导入:https : //itnext.io/create-react-app-with-vs-code-1913321b48d

所以 ESLint 不会抱怨它。

我的 IDE 的屏幕截图: 在此处输入图片说明

小智 5

安装:

npm i -D eslint-import-resolver-webpack eslint-plugin-import
Run Code Online (Sandbox Code Playgroud)

添加.eslintrc

"settings": {
  "import/resolver": {
   "webpack": {
     "config": "webpack.config.js"
   }
  }
}
Run Code Online (Sandbox Code Playgroud)

添加webpack.config.js

const path = require('path')

resolve: {
  modules: [
   'node_modules',
   path.resolve('./assets'),  //your path
   path.resolve('./constans'), //your path
]}
Run Code Online (Sandbox Code Playgroud)


cub*_*fox 5

将其添加到 .eslintrc

  "settings": {
    "import/resolver": {
      "node": {
        "paths": ["src"]
      }
    }
  }
Run Code Online (Sandbox Code Playgroud)