0.5.9 • Published 4 months ago

eslint-config-soybeanjs v0.5.9

Weekly downloads
-
License
MIT
Repository
github
Last release
4 months 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

4 months ago

0.5.8

7 months ago

0.5.7

7 months ago

0.5.6

9 months ago

0.5.5

9 months ago

0.4.10

11 months ago

0.5.4

10 months ago

0.5.3

10 months ago

0.5.0

10 months ago

0.5.2

10 months ago

0.5.1

10 months ago

0.4.9

11 months ago

0.4.8

12 months ago

0.4.5

12 months ago

0.4.4

12 months ago

0.4.7

12 months ago

0.3.8

12 months ago

0.4.6

12 months ago

0.4.1

12 months ago

0.4.0

12 months ago

0.4.3

12 months ago

0.4.2

12 months ago

0.3.6

1 year ago

0.3.5

1 year ago

0.3.7

1 year ago

0.3.4

1 year ago

0.3.3

1 year ago

0.3.0

1 year ago

0.2.7

1 year ago

0.2.8

1 year ago

0.3.2

1 year ago

0.3.1

1 year ago

0.2.3

1 year ago

0.2.1

1 year ago

0.1.2

2 years ago

0.2.0

1 year ago

0.1.1

2 years ago

0.2.2

1 year ago

0.1.0

2 years ago

0.0.11

2 years ago

0.0.10

2 years ago

0.0.9

2 years ago

0.0.8

2 years ago

0.0.7

2 years ago

0.0.6

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.3

2 years ago