IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> vscode配置文件之.eslintrc.json -> 正文阅读

[开发工具]vscode配置文件之.eslintrc.json

.eslintrc.json

{
  "env": {
    "browser": true,
    "es6": true
  },
  "extends": [
    "plugin:react/recommended",
    "plugin:react-hooks/recommended",
    "plugin:prettier/recommended"
  ],
  "parser": "@typescript-eslint/parser",
  "parserOptions": {
    "project": "./tsconfig.json"
  },
  "plugins": ["@typescript-eslint", "formatjs", "prettier"],
  "settings": {
    "react": {
      "version": "detect"
    }
  },
  "rules": {
    "@typescript-eslint/no-unused-vars": "error",
    "import/prefer-default-export": "off",
    "react/prop-types": "off",
    "react/jsx-uses-react": "off",
    "react/react-in-jsx-scope": "off",
    "@typescript-eslint/no-non-null-assertion": "off",
    "@typescript-eslint/no-require-imports": "warn",
    "@typescript-eslint/no-this-alias": "error",
    "@typescript-eslint/no-unnecessary-boolean-literal-compare": "off",
    "@typescript-eslint/no-unnecessary-qualifier": "error",
    "@typescript-eslint/no-unused-expressions": "error",
    "@typescript-eslint/no-var-requires": "error",
    "@typescript-eslint/prefer-for-of": "error",
    "@typescript-eslint/prefer-function-type": "error",
    "@typescript-eslint/prefer-namespace-keyword": "error",
    "@typescript-eslint/prefer-readonly": "error",
    "@typescript-eslint/promise-function-async": "warn",
    "@typescript-eslint/quotes": "off",
    "@typescript-eslint/restrict-plus-operands": "warn",
    "react/display-name": "off",
    "no-redeclare": "off",
    "id-blacklist": [
      "error",
      "any",
      "String",
      "string",
      "Boolean",
      "boolean",
      "Undefined",
      "undefined"
    ],
    "one-var": ["error", "never"],
    "prefer-const": "error",
    "prefer-object-spread": "error",
    "prefer-template": "error",
    "quote-props": "off",
    "radix": "off",
    "react/jsx-boolean-value": "error",
    "react/jsx-key": "error",
    "prettier/prettier": [
      "error",
      {
        "endOfLine": "auto"
      }
    ]
  }
}

.eslintignore

node_modules
.DS_Store
dist
dist-ssr
*.local
vite.config.ts
tsconfig.json
src/**/*.d.ts
scripts
mocks

.prettierignore

*.styl
.*ignore
.npmrc
.umi/
.DS_Store
CODEOWNERS
*.ejs
src/assets
!.*.js
dist/
nginx.conf
Dockerfile
Jenkinsfile
*.png
*.xml
*.styl.d.ts
/.docz

.gitignore

node_modules
.DS_Store
dist
dist-ssr
*.local
yarn-error.log
.vscode

tsconfig.json

{
  "compilerOptions": {
    "target": "ESNext",
    "lib": ["DOM", "DOM.Iterable", "ESNext"],
    "types": ["vite/client"],
    "allowJs": false,
    "skipLibCheck": true,
    "esModuleInterop": false,
    "allowSyntheticDefaultImports": true,
    "strict": true,
    "baseUrl": "./src",
    "forceConsistentCasingInFileNames": true,
    "module": "ESNext",
    "sourceMap": true,
    "moduleResolution": "Node",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "noEmit": true,
    "jsx": "react"
  },
  "include": ["./src"],
  "exclude": ["node_modules"]
}

vite.config.ts

import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'
import path from 'path'
import fs from 'fs'
import getThemeVariables from '@ant-design/aliyun-theme/'
import { viteMockServe } from 'vite-plugin-mock'

const paths = fs.readdirSync(path.resolve(__dirname, 'src'))
const alias = paths
  .filter((p) => {
    const stat = fs.statSync(path.resolve(__dirname, 'src/', p))
    return stat.isDirectory()
  })
  .map((p) => ({
    find: p,
    replacement: path.resolve(__dirname, 'src/', p),
  }))

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    react({
      jsxRuntime: 'classic',
      babel: {
        plugins: [
          ['@emotion'],
          [
            'formatjs',
            {
              idInterpolationPattern: '[sha512:contenthash:base64:6]', // formatjs id规则
              removeDefaultMessage: true,
            },
          ],
        ],
      },
    }),
    viteMockServe({
      // default
      mockPath: './mocks',
      localEnabled: !!process.env.VITE_APP_MOCK,
    }),
  ],
  resolve: {
    alias: [...alias, { find: /^~/, replacement: '' }],
  },
  css: {
    preprocessorOptions: {
      less: {
        modifyVars: getThemeVariables,
        javascriptEnabled: true,
      },
    },
  },
  esbuild: {},
  server: {
    hmr: {
      protocol: 'ws',
      host: 'localhost',
      port: 3001,
    },
    port: 3001,
    proxy: process.env.VITE_APP_MOCK
      ? null
      : {
          '/api/': {
            target: '项目IP:端口号 或者网址',
            secure: false,
            changeOrigin: true,
            rewrite: (path) => path.replace(/^\/api/, ''),
          },
        },
  },
})

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-04-01 23:37:33  更:2022-04-01 23:38:17 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 5:18:57-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码