react/no-danger 制限
何をするか
このルールは dangerouslySetInnerHTML プロパティの使用を禁止します。
なぜ問題なのか
dangerouslySetInnerHTML は、React コンポーネントに HTML を埋め込む方法です。これは危険な理由は、簡単にクロスサイトスクリプティング(XSS)脆弱性を引き起こす可能性があるためです。
例
このルールに対して誤りなコードの例:
jsx
import React from "react";
const Hello = <div dangerouslySetInnerHTML={{ __html: "Hello World" }}></div>;このルールに対して正しいコードの例:
jsx
import React from "react";
const Hello = <div>Hello World</div>;使い方
設定ファイルまたは CLI でこのルールを有効化するには、次のようにします:
json
{
"plugins": ["react"],
"rules": {
"react/no-danger": "error"
}
}bash
oxlint --deny react/no-danger --react-plugin