ESLint設定
UnoCSS用のESLint設定:@unocss/eslint-config
。
インストール
bash
pnpm add -D @unocss/eslint-config
bash
yarn add -D @unocss/eslint-config
bash
npm install -D @unocss/eslint-config
bash
bun add -D @unocss/eslint-config
js
import unocss from '@unocss/eslint-config/flat'
export default [
unocss,
// その他の設定
]
従来の.eslintrc
スタイルの場合:
json
{
"extends": [
"@unocss"
]
}
ルール
@unocss/order
- クラスセレクタの順序を強制します。@unocss/order-attributify
- 属性セレクタの順序を強制します。@unocss/blocklist
- 特定のクラスセレクタを禁止します[オプション]。@unocss/enforce-class-compile
- クラスのコンパイルを強制します[オプション]。
オプションルール
これらのルールはデフォルトでは有効になっていません。有効にするには、.eslintrc
に以下を追加します:
json
{
"extends": [
"@unocss"
],
"rules": {
"@unocss/<rule-name>": "warn", // または "error"
"@unocss/<another-rule-name>": ["warn" /* または "error" */, { /* オプション */ }]
}
}
@unocss/blocklist
blocklist
にリストされたユーティリティが使用された場合に警告またはエラーを発生させます。
メタオブジェクトのmessage
プロパティを使用して、ブロックされたルールのメッセージをカスタマイズし、より情報量が多く、コンテキストに特化したものにできます:
ts
export default defineConfig({
blocklist: [
['bg-red-500', { message: 'Use bg-red-600 instead' }],
[/-auto$/, { message: s => `Use ${s.replace(/-auto$/, '-a')} instead` }], // -> "my-auto" is in blocklist: Use "my-a" instead
],
})
@unocss/enforce-class-compile
🔧
このルールはcompile class transformerと組み合わせて動作するように設計されています。
クラス属性またはディレクティブが:uno:
で始まらない場合に警告またはエラーを発生させます。
🔧 すべてのクラス属性とディレクティブに自動的に:uno:
プレフィックスを追加します。
オプション:
prefix
(string) - カスタムプレフィックスと組み合わせて使用できます。デフォルト::uno:
enableFix
(boolean) -false
の場合、段階的な移行に使用できます。デフォルト:true
注意:現在はVueのみサポートされています。JSXでこれを実装したい場合は_プルリクエストを送ってください_。Svelteでこれを探している場合は、svelte-scoped
モードを探しているかもしれません。
参考
@devuntによるeslint-plugin-unocssに感謝します。