Skip to content
← Back to rules

jsx-a11y/anchor-ambiguous-text 制限

何をするか

アンカーのリンクテキストに曖昧な言葉が使われていないか確認します。

このルールは、利用可能な場合、アンカー要素の aria-label からテキストをチェックします。
アンカーに aria-label が存在しない場合は、子要素の以下のテキストを組み合わせます:

  • 利用可能な aria-label
  • 子要素が画像の場合、alt テキスト
  • HTML 要素のテキストコンテンツ

なぜ問題なのか

画面読み上げユーザーはリンクの文脈に依存しており、"ここをクリック" のような曖昧な言葉は十分な文脈を提供しません。

このルールに対して 誤り なコードの例:

jsx
<a>リンク</a>
<a>ここをクリック</a>

このルールに対して 正しい コードの例:

jsx
<a>このチュートリアルを読む</a>
<a aria-label="oxc linter ドキュメント">ここをクリック</a>

設定

このルールは、次のプロパティを持つ設定オブジェクトを受け取ります:

words

type: string[]

default: ["ここをクリック", "ここ", "リンク", "リンク", "詳しくはこちら"]

アンカーテキストで警告すべき曖昧な単語やフレーズのリストです。

使用方法

設定ファイルまたは CLI でこのルールを 有効化 するには、次のように使用できます:

json
{
  "plugins": ["jsx-a11y"],
  "rules": {
    "jsx-a11y/anchor-ambiguous-text": "error"
  }
}
bash
oxlint --deny jsx-a11y/anchor-ambiguous-text --jsx-a11y-plugin

参照