根入口
| API | 签名或类型 | 默认值与行为 |
|---|---|---|
vueConfig | Config[] | 不带项目覆写的 Vue 3 完整配置 |
uniAppConfig | Config[] | 不带项目覆写的 UniApp 完整配置 |
createBaseConfigs | (options?: ProjectConfigOptions) => Config[] | environment: "browser";用于无前端框架项目 |
createVueProjectConfigs | (options?: ProjectConfigOptions, ...overrides: Config[]) => Config[] | Vue 3、Vue SFC 与 Vue JSX/TSX |
createUniAppProjectConfigs | (options?: ProjectConfigOptions, ...overrides: Config[]) => Config[] | 额外处理 .nvue、UniApp globals 与清单 |
defineRules | <Rules extends RuleOptions>(rules: Rules) => Rules & Linter.RulesRecord | 原样返回对象,只提供规则名与选项类型检查 |
ProjectConfigOptions | { environment?: "browser" | "node" | "universal" } | 应用源码默认按浏览器环境处理 |
RuleOptions | 生成的规则配置类型 | 覆盖当前插件规则名与规则选项 |
js
import { vueConfig } from "@fast-china/eslint-config";
import { defineConfig } from "eslint/config";
export default defineConfig([
...vueConfig,
{
name: "project/custom",
rules: {},
},
]);项目规则按需填写到 rules: {};保持为空时沿用共享默认规则。
defineConfig() 是 ESLint 官方配置辅助函数。展开 vueConfig 后追加的项目配置拥有更高优先级,既保留共享基线,也为消费项目留下明确的自定义入口。
createBaseConfigs 创建
创建不绑定前端框架的 JavaScript 与 TypeScript 完整配置。
签名
ts
export const createBaseConfigs = ({ environment = "browser" }: ProjectConfigOptions = {}): Config[];示例
js
import { createBaseConfigs } from "@fast-china/eslint-config";
import { defineConfig } from "eslint/config";
export default defineConfig([
...createBaseConfigs({ environment: "browser" }),
{
name: "project/custom",
files: ["src/**/*.{js,ts,vue}"],
rules: {
"no-console": "warn",
},
},
]);输入
| 输入值 | 输入值类型 | 必填/默认值 | 输入值说明 |
|---|---|---|---|
options | ProjectConfigOptions | 否,默认 {} | 应用源码的运行环境;默认仅注入浏览器全局变量。 |
返回
| 返回值 | 返回值类型 | 返回值说明 |
|---|---|---|
configs | Config[] | 可直接传给 eslint.config.* 的 Flat Config 数组。 |
createVueProjectConfigs 创建
创建处理 .vue、Vue JSX 与 Vue TSX,且不注入任何 UniApp 能力的 Vue 3 完整配置。
签名
ts
export const createVueProjectConfigs = ({ environment = "browser" }: ProjectConfigOptions = {}, ...overrides: Config[]): Config[];示例
js
import { createVueProjectConfigs } from "@fast-china/eslint-config";
import { defineConfig } from "eslint/config";
export default defineConfig([
...createVueProjectConfigs({ environment: "browser" }),
{
name: "project/custom",
files: ["src/**/*.{js,ts,vue}"],
rules: {
"no-console": "warn",
},
},
]);输入
| 输入值 | 输入值类型 | 必填/默认值 | 输入值说明 |
|---|---|---|---|
options | ProjectConfigOptions | 否,默认 {} | 应用源码的运行环境;默认仅注入浏览器全局变量。 |
...overrides | Config[] | 否,可传多个 | 追加在内置配置之后的项目级 Flat Config 覆写。 |
返回
| 返回值 | 返回值类型 | 返回值说明 |
|---|---|---|
configs | Config[] | Vue 3 项目可直接使用的 Flat Config 数组。 |
createUniAppProjectConfigs 创建
创建处理 .vue、.nvue、Vue JSX/TSX、UniApp globals 与应用清单的完整配置。
签名
ts
export const createUniAppProjectConfigs = ({ environment = "browser" }: ProjectConfigOptions = {}, ...overrides: Config[]): Config[];示例
js
import { createUniAppProjectConfigs } from "@fast-china/eslint-config";
import { defineConfig } from "eslint/config";
export default defineConfig([
...createUniAppProjectConfigs({ environment: "browser" }),
{
name: "project/custom",
files: ["src/**/*.{js,ts,vue}"],
rules: {
"no-console": "warn",
},
},
]);输入
| 输入值 | 输入值类型 | 必填/默认值 | 输入值说明 |
|---|---|---|---|
options | ProjectConfigOptions | 否,默认 {} | 应用源码的运行环境;默认仅注入浏览器全局变量。 |
...overrides | Config[] | 否,可传多个 | 追加在内置配置之后的项目级 Flat Config 覆写。 |
返回
| 返回值 | 返回值类型 | 返回值说明 |
|---|---|---|
configs | Config[] | UniApp 项目可直接使用的 Flat Config 数组。 |
