线性
BiA 的基础 lint 配置( s) .
所需资源
- 节点 >=20.19.0 | ESLint 语录 时间:
- 类型脚本 >= 5.1.0, >=, 反应 >=17.0.0, (中文(简体) ), 高级 >= 3.0.0, >=, 样式林 16.0.0——视需要而定
使用 ESLint 软件 平面配置. 遗产 .eslintrc.* 不被支持.
安装
npm i -D @buildinams/lint eslint prettier stylelint
丢弃 prettier 和(或) stylelint 如果你不需要的话.
ESLint 语录
| 配置 | 导出路径 |
|---|---|
| Java 脚本 | @buildinams/lint/eslint/javascript |
| 类型脚本 | @buildinams/lint/eslint/typescript |
| 反应 | @buildinams/lint/eslint/react |
| 反应 + 类型脚本 | @buildinams/lint/eslint/react-typescript |
| 下一个.js | @buildinams/lint/eslint/next |
| 下一个.js + 类型脚本 | @buildinams/lint/eslint/next-typescript |
// eslint.config.mjs
import config from "@buildinams/lint/eslint/next-typescript";
import { globalIgnores } from "eslint/config";
export default [
...config,
globalIgnores([".next/**", "out/**", "build/**"]),
];
司法理事会
// eslint.config.js
module.exports = [...require("@buildinams/lint/eslint/next-typescript")];
套装插件
未用进口,简单进口型, 导入x, (中文(简体) ), 更美丽 (格式化出错误作为lint出错),反应+反应-hooks + jsx-a11y(反应/下), @next/slint-plugin-next (英语) (下个), 类型标记- slint (TS).
自定义规则
- 进口订单= 绝对值(
_, (中文(简体) ),~前缀) 相对 type结束interface通过consistent-type-definitions- 无音符 ——使用
as const相反(只有非自动固定规则) - 没有
console.log—— 说warn财务报告和审定财务报表error允许 - 反应版本 默认为
19。对旧版本的覆盖:
// eslint.config.mjs
export default [
...config,
{ settings: { react: { version: "18" } } },
];
高级
// .prettierrc.mjs
export { default } from "@buildinams/lint/prettier";
跟踪逗号 "all" 双引号
格式化出错也会通过 ESLint 显示出错 eslint-plugin-prettier。 。 。 .
样式林
// .stylelintrc.json
{
"extends": "@buildinams/lint/stylelint"
}
扩展 : 标准字符, (中文(简体) ), css-模块, (中文(简体) ), 休庭令, (中文(简体) ), 样式lint - prettier启用 scss/selector-no-redundant-nesting-selector。 。 。 .
自定义SCSS 函数
{
"extends": "@buildinams/lint/stylelint",
"rules": {
"scss/function-no-unknown": [true, { "ignoreFunctions": ["px-to-rem"] }]
}
}
虚拟系统
扩展名 : vscode-slint (英语), (中文(简体) ), 更美的 v 码, (中文(简体) ), vscode- stylelint (英语)
// .vscode/settings.json
{
"editor.formatOnSave": false,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit",
"source.fixAll.stylelint": "explicit"
},
"scss.validate": false,
"stylelint.validate": ["scss"]
}
从 v. 4. x 移动
- 更新到ESLint 9+和节点20+
- 删除
.eslintrc.* - 创建
eslint.config.mjs(见上文)
键 @buildinams/[email protected] 如果停留在ESLint 8上.
捐款
有问题吗? 想要个新角色吗? 参与进来。 。 。 .