eslint-config-cmyr
草梅友仁个人使用的 eslint 检测规范
支持 ESLint v9+ 的扁平化配置(Flat Config)
"lint": "cross-env NODE_ENV=production eslint src --fix"
风格理念
- 若无必要,勿增实体。
- 如果某元素可有可无,则无
- 若移除某元素会导致 bug ,则留,否则无
安装
# 前置依赖
npm install typescript eslint --save-dev
# 安装 eslint-config-cmyr
npm install eslint-config-cmyr --save-dev
配置
ESLint v9+ (推荐)
使用新的扁平化配置格式:
// eslint.config.js
import { defineConfig } from "eslint/config";
import cmyr from "eslint-config-cmyr";
export default defineConfig([cmyr]);
不同环境的配置
TypeScript 项目(默认)
// eslint.config.js
import { defineConfig } from "eslint/config";
import cmyr from "eslint-config-cmyr";
export default defineConfig([cmyr]);
Vue 项目
npm install typescript eslint eslint-plugin-vue eslint-config-cmyr --save-dev
// eslint.config.js
import { defineConfig } from "eslint/config";
import cmyr from "eslint-config-cmyr/vue";
export default defineConfig([cmyr]);
React 项目
npm install typescript eslint eslint-plugin-react eslint-config-cmyr --save-dev
// eslint.config.js
import { defineConfig } from "eslint/config";
import cmyr from "eslint-config-cmyr/react";
export default defineConfig([cmyr]);
Browser 项目
// eslint.config.js
import { defineConfig } from "eslint/config";
import cmyr from "eslint-config-cmyr/browser";
export default defineConfig([cmyr]);
Nuxt 项目
npm install typescript eslint eslint-plugin-vue eslint-config-cmyr @nuxt/eslint --save-dev
// nuxt.config.ts;
export default defineNuxtConfig({
modules: ["@nuxt/eslint"],
eslint: {
config: {
standalone: false,
},
},
});
// eslint.config.js
import cmyrConfig from "eslint-config-cmyr/nuxt";
import withNuxt from "./.nuxt/eslint.config.mjs";
export default withNuxt(cmyrConfig, {
rules: {},
});