规则域
可用规则域列表
Astro
在 Astro 项目中使用该规则域(domain)。该规则域启用了一批 Astro 项目专属的规则。
Astro 启用
启用该规则域中推荐、非 nursery(实验分组) 的规则:
{
"linter": {
"domains": {
"astro": "recommended"
}
}
}启用该规则域的全部规则:
{
"linter": {
"domains": {
"astro": "all"
}
}
}停用该规则域的全部规则:
{
"linter": {
"domains": {
"astro": "none"
}
}
}Astro 依赖
声明了以下依赖时启用:
astro:>=1.0.0
Astro 规则
属于该规则域的规则:
Drizzle
在基于 Drizzle 的项目中使用该规则域。
Drizzle 启用
启用该规则域中推荐、非 nursery 的规则:
{
"linter": {
"domains": {
"drizzle": "recommended"
}
}
}启用该规则域的全部规则:
{
"linter": {
"domains": {
"drizzle": "all"
}
}
}停用该规则域的全部规则:
{
"linter": {
"domains": {
"drizzle": "none"
}
}
}Drizzle 依赖
声明了以下依赖时启用:
drizzle-orm:>=0.9.0
Drizzle 规则
属于该规则域的规则:
Next
在 Next.js 项目中使用该规则域。
Next 启用
启用该规则域中推荐、非 nursery 的规则:
{
"linter": {
"domains": {
"next": "recommended"
}
}
}启用该规则域的全部规则:
{
"linter": {
"domains": {
"next": "all"
}
}
}停用该规则域的全部规则:
{
"linter": {
"domains": {
"next": "none"
}
}
}Next 依赖
声明了以下依赖时启用:
next:>=14.0.0
Next 规则
属于该规则域的规则:
- noBeforeInteractiveScriptOutsideDocument
- noNextAsyncClientComponent
- useExhaustiveDependencies (推荐)
- useHookAtTopLevel (推荐)
- useInlineScriptId (推荐)
- noImgElement (推荐)
- noSyncScripts
- noUnwantedPolyfillio (推荐)
- useGoogleFontPreconnect (推荐)
- noHeadElement (推荐)
- noDocumentImportInPage (推荐)
- noHeadImportInDocument (推荐)
Playwright
在 Playwright 测试项目中使用该规则域。该规则域启用了一批规则,帮助你在编写 Playwright 测试时落实最佳实践并捕捉常见错误。
Playwright 启用
启用该规则域中推荐、非 nursery 的规则:
{
"linter": {
"domains": {
"playwright": "recommended"
}
}
}启用该规则域的全部规则:
{
"linter": {
"domains": {
"playwright": "all"
}
}
}停用该规则域的全部规则:
{
"linter": {
"domains": {
"playwright": "none"
}
}
}Playwright 依赖
声明了以下依赖时启用:
@playwright/test:>=1.0.0
Playwright 全局变量
启用后,Biome 会识别以下全局绑定:
testexpect
Playwright 规则
属于该规则域的规则:
- noPlaywrightElementHandle (nursery)
- noPlaywrightEval (nursery)
- noPlaywrightForceOption (nursery)
- noPlaywrightMissingAwait (nursery)
- noPlaywrightNetworkidle (nursery)
- noPlaywrightPagePause (nursery)
- noPlaywrightUselessAwait (nursery)
- noPlaywrightWaitForNavigation (nursery)
- noPlaywrightWaitForSelector (nursery)
- noPlaywrightWaitForTimeout (nursery)
- usePlaywrightValidDescribeCallback (nursery)
Project
该规则域包含执行项目级分析的规则,其中包括用于依赖解析的模块图。启用属于该规则域的规则时,Biome 会扫描整个项目。扫描阶段会影响 Lint 过程的性能。参阅我们关于扫描器的文档,进一步了解扫描器。
Project 启用
启用该规则域中推荐、非 nursery 的规则:
{
"linter": {
"domains": {
"project": "recommended"
}
}
}启用该规则域的全部规则:
{
"linter": {
"domains": {
"project": "all"
}
}
}停用该规则域的全部规则:
{
"linter": {
"domains": {
"project": "none"
}
}
}Project 规则
属于该规则域的规则:
- noPrivateImports (推荐)
- noUndeclaredDependencies
- noUnresolvedImports
- useImportExtensions
- useJsonImportAttributes
- noUndeclaredClasses (nursery)
- noUndeclaredCustomProperties (nursery)
- noDeprecatedImports
- noImportCycles
- noUntrustedLicenses (nursery)
- noUndeclaredCustomProperties (nursery)
- noUnusedClasses (nursery)
- noUndeclaredClasses (nursery)
- noUndeclaredCustomProperties (nursery)
Qwik
在 Qwik 项目中使用该规则域。该规则域启用了一批 Qwik 项目专属的规则。
Qwik 启用
启用该规则域中推荐、非 nursery 的规则:
{
"linter": {
"domains": {
"qwik": "recommended"
}
}
}启用该规则域的全部规则:
{
"linter": {
"domains": {
"qwik": "all"
}
}
}停用该规则域的全部规则:
{
"linter": {
"domains": {
"qwik": "none"
}
}
}Qwik 依赖
声明了以下依赖时启用:
@builder.io/qwik:>=1.0.0@qwik.dev/core:>=2.0.0
Qwik 规则
属于该规则域的规则:
- noQwikUseVisibleTask (推荐)
- useImageSize (推荐)
- useJsxKeyInIterable (推荐)
- useQwikClasslist (推荐)
- useQwikMethodUsage (推荐)
- useQwikValidLexicalScope (推荐)
- useQwikLoaderLocation (nursery)
- noReactSpecificProps (推荐)
React
在 React 项目中使用该规则域。它启用了一组规则,有助于捕捉 bug 并落实正确的实践。该规则域启用的规则可能与 Solid 规则域冲突。
React 启用
启用该规则域中推荐、非 nursery 的规则:
{
"linter": {
"domains": {
"react": "recommended"
}
}
}启用该规则域的全部规则:
{
"linter": {
"domains": {
"react": "all"
}
}
}停用该规则域的全部规则:
{
"linter": {
"domains": {
"react": "none"
}
}
}React 依赖
声明了以下依赖时启用:
react:>=16.0.0
React 规则
属于该规则域的规则:
- noChildrenProp (推荐)
- noNestedComponentDefinitions
- noReactPropAssignments
- noRenderReturnValue (推荐)
- useExhaustiveDependencies (推荐)
- useHookAtTopLevel (推荐)
- useJsxKeyInIterable (推荐)
- useUniqueElementIds
- noComponentHookFactories (nursery)
- noJsxLeakedDollar (nursery)
- noJsxNamespace (nursery)
- noReactStringRefs (nursery)
- useReactAsyncServerFunction (nursery)
- useReactCompiler (nursery)
- useReactFunctionComponentDefinition (nursery)
- useReactNamingConvention (nursery)
- noJsxPropsBind
- noSyncScripts
- noDangerouslySetInnerHtml (推荐)
- noDangerouslySetInnerHtmlWithChildren (推荐)
- useComponentExportOnlyModules
- useReactFunctionComponents
- noArrayIndexKey (推荐)
- noDuplicatedSpreadProps
- noLeakedRender
- noReactForwardRef
- noUnknownAttribute
ReactNative
在 React Native 项目中使用该规则域。它启用了一组规则,有助于捕捉 React Native 特有的运行时问题,例如在 <Text> 组件之外渲染纯文本。
ReactNative 启用
启用该规则域中推荐、非 nursery 的规则:
{
"linter": {
"domains": {
"reactnative": "recommended"
}
}
}启用该规则域的全部规则:
{
"linter": {
"domains": {
"reactnative": "all"
}
}
}停用该规则域的全部规则:
{
"linter": {
"domains": {
"reactnative": "none"
}
}
}ReactNative 依赖
声明了以下依赖时启用:
react-native:>=0.60.0
ReactNative 规则
属于该规则域的规则:
- noReactNativeDeepImports (nursery)
- noReactNativeLiteralColors (nursery)
- noReactNativeRawText (nursery)
- useReactNativePlatformComponents (nursery)
Solid
在 Solid 项目中使用该规则域。该规则域启用的规则可能与 React 规则域冲突。
Solid 启用
启用该规则域中推荐、非 nursery 的规则:
{
"linter": {
"domains": {
"solid": "recommended"
}
}
}启用该规则域的全部规则:
{
"linter": {
"domains": {
"solid": "all"
}
}
}停用该规则域的全部规则:
{
"linter": {
"domains": {
"solid": "none"
}
}
}Solid 依赖
声明了以下依赖时启用:
solid:>=1.0.0
Solid 规则
属于该规则域的规则:
Svelte
在 Svelte 项目中使用该规则域。该规则域启用了一批 Svelte 项目专属的规则。
Svelte 启用
启用该规则域中推荐、非 nursery 的规则:
{
"linter": {
"domains": {
"svelte": "recommended"
}
}
}启用该规则域的全部规则:
{
"linter": {
"domains": {
"svelte": "all"
}
}
}停用该规则域的全部规则:
{
"linter": {
"domains": {
"svelte": "none"
}
}
}Svelte 依赖
声明了以下依赖时启用:
svelte:>=3.0.0
Svelte 规则
属于该规则域的规则:
- noSvelteUnnecessaryStateWrap (nursery)
- noSvelteAtHtmlTags (nursery)
- noSvelteLegacyConst (nursery)
- useSvelteRequireEachKey (nursery)
Tailwind
在 Tailwind CSS 项目中使用该规则域。该规则域启用了一批 Tailwind CSS 专属的规则。
Tailwind 启用
启用该规则域中推荐、非 nursery 的规则:
{
"linter": {
"domains": {
"tailwind": "recommended"
}
}
}启用该规则域的全部规则:
{
"linter": {
"domains": {
"tailwind": "all"
}
}
}停用该规则域的全部规则:
{
"linter": {
"domains": {
"tailwind": "none"
}
}
}Tailwind 依赖
声明了以下依赖时启用:
tailwindcss:>=3.0.0
Tailwind 规则
属于该规则域的规则:
- noTailwindArbitraryValue (nursery)
- useTailwindShorthandClasses (nursery)
- noTailwindArbitraryValue (nursery)
- useTailwindShorthandClasses (nursery)
Test
在 Lint 测试文件时使用该规则域。它启用了一组与测试库无关的规则,有助于捕捉对测试 API 的可能误用。
Test 启用
启用该规则域中推荐、非 nursery 的规则:
{
"linter": {
"domains": {
"test": "recommended"
}
}
}启用该规则域的全部规则:
{
"linter": {
"domains": {
"test": "all"
}
}
}停用该规则域的全部规则:
{
"linter": {
"domains": {
"test": "none"
}
}
}Test 依赖
声明了以下依赖时启用:
jest:>=26.0.0mocha:>=8.0.0ava:>=2.0.0vitest:>=1.0.0
Test 全局变量
启用后,Biome 会识别以下全局绑定:
afterafterAllafterEachbeforebeforeEachbeforeAllcontextdescribeitexpectrunsetupspecifysuitesuiteSetupsuiteTeardownteardowntestxcontextxdescribexitxspecify
Test 规则
属于该规则域的规则:
- noExcessiveNestedTestSuites
- noConditionalExpect (nursery)
- noIdenticalTestTitle (nursery)
- useConsistentTestIt (nursery)
- useExpect (nursery)
- useTestHooksInOrder (nursery)
- useTestHooksOnTop (nursery)
- useValidTestTitle (nursery)
- noDuplicateTestHooks (推荐)
- noExportsInTest (推荐)
- noFocusedTests (推荐)
- noSkippedTests
Turborepo
在 Turborepo 项目中使用该规则域。该规则域启用了一批 Turborepo 项目专属的规则。
Turborepo 启用
启用该规则域中推荐、非 nursery 的规则:
{
"linter": {
"domains": {
"turborepo": "recommended"
}
}
}启用该规则域的全部规则:
{
"linter": {
"domains": {
"turborepo": "all"
}
}
}停用该规则域的全部规则:
{
"linter": {
"domains": {
"turborepo": "none"
}
}
}Turborepo 依赖
声明了以下依赖时启用:
turbo:>=1.0.0
Turborepo 规则
属于该规则域的规则:
- noUndeclaredEnvVars (推荐)
Types
该规则域包含执行项目级分析的规则,其中包括用于依赖解析的模块图。启用属于该规则域的规则时,Biome 会扫描整个项目,并启用推理引擎来解析和展平类型。扫描阶段会影响 Lint 过程的性能。参阅我们关于扫描器的文档,进一步了解扫描器。
Types 启用
启用该规则域中推荐、非 nursery 的规则:
{
"linter": {
"domains": {
"types": "recommended"
}
}
}启用该规则域的全部规则:
{
"linter": {
"domains": {
"types": "all"
}
}
}停用该规则域的全部规则:
{
"linter": {
"domains": {
"types": "none"
}
}
}Types 规则
属于该规则域的规则:
- useArrayFind
- noBaseToString (nursery)
- noFloatingPromises (nursery)
- noMisleadingReturnType (nursery)
- noMisusedPromises (nursery)
- noUnsafePlusOperands (nursery)
- noUselessTypeConversion (nursery)
- useAwaitThenable (nursery)
- useDisposables (nursery)
- useExhaustiveSwitchCases (nursery)
- useIncludes (nursery)
- useNullishCoalescing (nursery)
- useRegexpExec (nursery)
- useStringStartsEndsWith (nursery)
- useConsistentEnumValueType
- noUnnecessaryConditions
- useArraySortCompare
Vue
在 Vue 项目中使用该规则域。该规则域启用了一批 Vue 项目专属的规则。
Vue 启用
启用该规则域中推荐、非 nursery 的规则:
{
"linter": {
"domains": {
"vue": "recommended"
}
}
}启用该规则域的全部规则:
{
"linter": {
"domains": {
"vue": "all"
}
}
}停用该规则域的全部规则:
{
"linter": {
"domains": {
"vue": "none"
}
}
}Vue 依赖
声明了以下依赖时启用:
vue:>=3.0.0
Vue 规则
属于该规则域的规则:
- noVueDataObjectDeclaration (推荐)
- noVueDuplicateKeys (推荐)
- noVueReservedKeys (推荐)
- noVueReservedProps (推荐)
- noVueSetupPropsReactivityLoss
- noVueDeprecatedScopedSlots (nursery)
- noVueImportCompilerMacros (nursery)
- noVueRefAsOperand (nursery)
- useVueBaseImport (nursery)
- useVueConsistentDefinePropsDeclaration (nursery)
- useVueNextTickPromise (nursery)
- noVueOptionsApi
- useVueDefineMacrosOrder
- useVueMultiWordComponentNames (推荐)
- noVueArrowFuncInWatch (推荐)
- noVueVIfWithVFor (推荐)
- useVueVForKey (推荐)
- useVueValidTemplateRoot (推荐)
- useVueValidVBind (推荐)
- useVueValidVCloak (推荐)
- useVueValidVElse (推荐)
- useVueValidVElseIf (推荐)
- useVueValidVHtml (推荐)
- useVueValidVIf (推荐)
- useVueValidVOn (推荐)
- useVueValidVOnce (推荐)
- useVueValidVPre (推荐)
- useVueValidVText (推荐)
- noVueVOnNumberValues (nursery)
- useScopedStyles (nursery)
- useVueValidVFor (nursery)
- useVueVapor
- useVueConsistentVBindStyle (推荐)
- useVueConsistentVOnStyle (推荐)
- useVueHyphenatedAttributes (推荐)