@configurajs/vite-plus
v0.2.6
Published
Opinionated Oxlint + Oxfmt configuration preset for Vite+ projects
Downloads
6,381
Readme
@configurajs/vite-plus
为 Vite+ 项目提供的开箱即用 Oxlint + Oxfmt 配置预设。
特性
- TypeScript(默认开启)
- Vue 3(默认开启)
- React(按需开启)
- Vitest(默认开启)
- Oxfmt 格式化,支持 import 排序和 Tailwind CSS class 排序
- 开箱即用的 lint-staged 预设
安装
pnpm add -D @configurajs/vite-plus使用
Oxc 配置文件
在项目根目录创建 oxlint.config.ts:
// oxlint.config.ts
import { lint } from '@configurajs/vite-plus'
export default lint()在项目根目录创建 oxfmt.config.ts:
// oxfmt.config.ts
import { fmt } from '@configurajs/vite-plus'
export default fmt()Vite+ 配置文件
如果你使用的是 Vite+,可以直接在 vite.config.ts 中配置 lint、fmt 和 staged:
// vite.config.ts
import { defineConfig } from 'vite-plus'
import { lint, fmt, staged } from '@configurajs/vite-plus'
export default defineConfig({
lint: lint(),
fmt: fmt(),
staged: staged(),
})Lint 选项
lint({
// 启用 TypeScript 支持(默认:true)
ts: true,
// 启用 Vue 支持,默认 Vue 3(默认:true)
vue: true, // 或 { version: 2 }
// 启用 React 支持(默认:false)
react: false,
// 启用 Vitest 支持(默认:true)
vitest: true,
// 自定义规则
rules: {
'no-console': 'error',
},
// 忽略文件模式
ignores: ['**/generated/**'],
// 额外的 overrides
overrides: [
{
files: ['scripts/**'],
rules: { 'no-console': 'off' },
},
],
})Fmt 选项
fmt({
// 忽略文件模式
ignores: ['**/generated/**'],
})Staged
staged() 返回一个预设的 lint-staged 配置:
staged()
// 等同于:
// {
// '*.{js,jsx,ts,tsx,vue}': ['vp fmt --no-error-on-unmatched-pattern', 'vp lint --fix'],
// '*.{md,json,yaml,yml,html,css,scss,less}': 'vp fmt --no-error-on-unmatched-pattern',
// }js / jsx / ts / tsx / vue— 格式化 + lint 修复md / json / yaml / yml / html / css / scss / less— 仅格式化
VSCode 工作区配置
在 .vscode/settings.json 中添加:
{
"prettier.enable": false,
"eslint.enable": false,
"editor.defaultFormatter": "oxc.oxc-vscode",
}License
MIT
