react项目eslint和ts配置

最佳实践antd-pro配置
@umijs/fabric

tsconfig.json

{
  "compilerOptions": {
    "target": "es5",
    "module": "esnext",
    "baseUrl": "./",
    "paths": {
      "@/*": [
        "./src/*"
      ]
    },
    "lib": [
      "dom",
      "dom.iterable",
      "esnext"
    ],
      // noUnusedLocals 设置为 false
    "sourceMap": true,
    "allowJs": true,
    "esModuleInterop": true,
    "allowSyntheticDefaultImports": true,
    "strict": true,
    "skipLibCheck": true,
    "noImplicitReturns": true,
    "noUnusedLocals": false,
    "noUnusedParameters": true,
    "forceConsistentCasingInFileNames": true,
    "moduleResolution": "node",
    "resolveJsonModule": true,
    "jsx": "react"
  },
  "include": [
    "src",
    "api"
  ]
}

.eslintrc.json

{
  "env": {
    "browser": true,
    "es6": true
  },
  "extends": [
    "airbnb"
  ],
  "plugins": [
    "react",
    "react-hooks"
  ],

  "globals": {
    "__DEV__": false,
    "__TEST__": false,
    "__PROD__": false,
    "__COVERAGE__": false
  },
  "parserOptions": {
    "ecmaFeatures": {
      "jsx": true
    },
    "ecmaVersion": 2018,
    "sourceType": "module"
  },
  "rules": {
    "semi": 0,
    "import/prefer-default-export": 0,
    "react/prop-types": 0,
    "react-hooks/rules-of-hooks": "error", // 检查 Hook 的规则
    "react-hooks/exhaustive-deps": 2, // 检查 effect 的依赖
    "react/jsx-props-no-spreading": 0,
    "react/destructuring-assignment": 0,
    "no-use-before-define": 0,
    "prefer-const": 0,
    "jsx-a11y/no-static-element-interactions": 0,
    "jsx-a11y/click-events-have-key-events": 0,
    "react/button-has-type": 0,
    "eqeqeq": 0,
    "no-useless-escape": 2
  }
}

要关闭ESLintReact项目中的使用,你可以按照以下方法操作: 1. 在项目的根目录下创建一个.eslintrc.json文件,并设置自己的eslint配置。例如,将以下内容添加到文件中: ``` { "extends": ["react-app"], "rules": { "eqeqeq": "off" } } ``` 2. 在package.json文件中修改eslint配置。将以下内容添加到文件中: ``` "eslintConfig": { "extends": "react-app", "rules": { "no-undef": "off", "no-restricted-globals": "off", "no-unused-vars": "off" } } ``` 3. 修改webpack配置文件。在项目中找到webpack.config.js文件,将与ESLint相关的配置项注释掉或删除。例如,将以下内容注释或删除: ``` !disableESLintPlugin && new ESLintPlugin({ // Plugin options extensions: ['js', 'mjs', 'jsx', 'ts', 'tsx'], formatter: require.resolve('react-dev-utils/eslintFormatter'), eslintPath: require.resolve('eslint'), failOnError: !(isEnvDevelopment && emitErrorsAsWarnings), context: paths.appSrc, cache: true, cacheLocation: path.resolve( paths.appNodeModules, '.cache/.eslintcache' ), // ESLint class options cwd: paths.appPath, resolvePluginsRelativeTo: __dirname, baseConfig: { extends: [require.resolve('eslint-config-react-app/base')], rules: { ...(!hasJsxRuntime && { 'react/react-in-jsx-scope': 'error', }), }, }, }) ``` 4. 最后,重新启动项目ESLint将不再生效,项目中的代码将不会经过ESLint的检查和修复。 请注意,这些方法可能会根据你的项目配置和版本有所不同,建议在进行修改之前备份你的项目文件。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [react怎么关闭eslint 或避免出现检测 整理](https://blog.csdn.net/v5666666/article/details/121378393)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* [react项目关闭eslint监测](https://blog.csdn.net/m0_46165586/article/details/127363856)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值