0.5.9 • Published 1 year ago

eslint-config-soybeanjs v0.5.9

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

!CAUTION 这是旧的配置,ESlint 9.0.0 发布后将默认使用新的扁平化配置,建议使用主分支的扁平化配置 main

SoybeanJS 的 ESLint 配置插件

  • 集成了 Prettier,自动修复并格式化
  • 多种 Eslint 预设配置: JavaScript, JSON, TypeScript, Vue, React, ReactNative, Svelte, Solid 和 Astro
  • 通过 Prettier 去格式化其他类型文件: HTML, CSS, Less, Sass, Scss, Markdown, MDX, yaml 和 yml

用法

安装

pnpm i -D eslint typescript eslint-config-soybeanjs

ESLint 配置文件

创建配置文件 .eslintrc

{
  "extends": "soybeanjs"
}

配置介绍

  • soybeanjs: 基础配置,用于格式化 JS、TS、JSON
  • soybeanjs/vue: 继承基础配置,用于格式化 Vue3
  • soybeanjs/vue2: 继承基础配置,用于格式化 Vue2
  • soybeanjs/react: 继承基础配置,用于格式化 React
  • soybeanjs/react-native: 继承 react 配置,用于格式化 ReactNative
  • soybeanjs/solid: 继承基础配置,用于格式化 Solid
  • soybeanjs/svelte: 继承基础配置,用于格式化 Svelte
  • soybeanjs/astro: 继承基础配置,用于格式化 Astro

请选择适合自己项目的配置

通常不需要添加 .eslintignore 配置文件,因为已经预设了一些配置,如果项目需要,可以自行添加

一个项目中配置多个 eslint 配置

例如:文件夹 solid 下面是用 SolidJS 写的 TSX,文件夹 react 下面是用 React 写的 TSX,那么分别在对应文件夹下面创建配置文件 .eslintrc.js, 配置值分别为 "soybeanjs/solid" 和 "soybeanjs/react"

解析别名 @/, ~/

默认会读取项目的 tsconfig.json 的 paths 作为别名解析,以下为默认配置,也可以自行修改进行覆盖

{
  "settings": {
    "import/resolver": {
      "typescript": {
        "project": [
          "tsconfig.json",
          "packages/*/tsconfig.json",
          "examples/*/tsconfig.json",
          "docs/*/tsconfig.json"
        ]
      }
    }
  }
}

ESLint 的 VSCode 配置

{
  "editor.codeActionsOnSave": {
    "source.fixAll.eslint": true // 在保存文件时自动格式化
  },
  "editor.formatOnSave": false,
  "eslint.validate": ["svelte", "astro", "json"]
}
  • eslint.validate: 配置需要校验的文件类型, eslint 插件默认校验的文件类型为 js, jsx, ts, tsx, vue, 如果需要校验其他类型文件,需要在这里添加(如下面添加的 svelte, astro 和 json)

    这里的校验是指 eslint 插件的校验,即界面上实时地显示错误,通过保存触发自动修复,和通过命令 eslint 去修复区别开来,通过命令 eslint --fix --ext .svelte可以指定校验和修复的文件类型

  • editor.formatOnSave: 关闭编辑器自带的格式化,以免和 eslint 的格式化冲突,当然也可以为不通过 eslint 校验的文件类型开启编辑器自带的格式化,如下面的配置, 保存时编辑器会自动格式化 html, css, less, scss, sass, markdown, yaml 和 yml 文件

{
  "editor.formatOnSave": false,
  "[html][css][less][scss][sass][markdown][yaml][yml][jsonc]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode",
    "editor.formatOnSave": true
  }
}

在 package.json 里添加脚本命令

{
  "scripts": {
    "lint": "eslint . --fix"
  }
}

soy 是依赖包 @soybeanjs/cli 的一个命令

  • 然后在项目中可以使用下面的命令对代码进行格式化修复
pnpm lint
0.5.9

1 year ago

0.5.8

2 years ago

0.5.7

2 years ago

0.5.6

2 years ago

0.5.5

2 years ago

0.4.10

2 years ago

0.5.4

2 years ago

0.5.3

2 years ago

0.5.0

2 years ago

0.5.2

2 years ago

0.5.1

2 years ago

0.4.9

2 years ago

0.4.8

2 years ago

0.4.5

2 years ago

0.4.4

2 years ago

0.4.7

2 years ago

0.3.8

2 years ago

0.4.6

2 years ago

0.4.1

2 years ago

0.4.0

2 years ago

0.4.3

2 years ago

0.4.2

2 years ago

0.3.6

2 years ago

0.3.5

2 years ago

0.3.7

2 years ago

0.3.4

2 years ago

0.3.3

2 years ago

0.3.0

2 years ago

0.2.7

2 years ago

0.2.8

2 years ago

0.3.2

2 years ago

0.3.1

2 years ago

0.2.3

2 years ago

0.2.1

3 years ago

0.1.2

3 years ago

0.2.0

3 years ago

0.1.1

3 years ago

0.2.2

2 years ago

0.1.0

3 years ago

0.0.11

3 years ago

0.0.10

3 years ago

0.0.9

3 years ago

0.0.8

3 years ago

0.0.7

3 years ago

0.0.6

3 years ago

0.0.5

3 years ago

0.0.4

3 years ago

0.0.3

3 years ago