Skip to content

./constants./rules

./constants 导出 JavaScript、TypeScript、声明文件、Vue、Angular、JSON/JSONC/JSON5、Markdown、YAML、Node 工具、tsconfig 与 CommonJS glob。

./rules 导出 defineRulesRuleNameRuleOptions,以及 Angular、Common、Import、JavaScript、Lodash、React、RegExp、排序、TypeScript、Vue 3 与 Vue Legacy 规则记录。

ts
import { defineRules, vueLegacyRules } from "@fast-china/eslint-config-legacy/rules";

export const rules = defineRules({
	...vueLegacyRules,
	"vue/multi-word-component-names": "off",
});

这些规则对象不包含 Parser、Plugin、环境和文件范围。规则升级的语义风险见规则风险指南

defineRules 规则定义

为消费项目定义类型安全的 ESLint 8 规则记录。

签名

ts
export const defineRules = <const Rules extends RuleOptions>(rules: RejectUnknownRuleNames<Rules>): Rules & Linter.RulesRecord;

示例

js
const { defineRules } = require("@fast-china/eslint-config-legacy/rules");

module.exports = {
	root: true,
	extends: ["@fast-china/eslint-config-legacy"],
	rules: defineRules({
		eqeqeq: ["error", "always"],
		"no-console": "warn",
	}),
};

输入

输入值输入值类型必填/默认值输入值说明
rulesRejectUnknownRuleNames<Rules>需要写入 .eslintrc 的规则记录。

返回

返回值返回值类型返回值说明
configsRules & Linter.RulesRecord与传入值引用相同、同时兼容 Linter.RulesRecord 的规则记录。