ホームページ  >  記事  >  ウェブフロントエンド  >  「dangerouslySetInnerHTML」を使用して HTML 変数を JSX に安全に挿入するにはどうすればよいですか?

「dangerouslySetInnerHTML」を使用して HTML 変数を JSX に安全に挿入するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-02 18:57:31334ブラウズ

How to Safely Inject HTML Variables into JSX with `dangerouslySetInnerHTML`?

JSX への React 変数の埋め込み:危険な方法で SetInnerHTML を使用した魔法のトリック

React では、JSX コード内の変数と HTML をシームレスに統合することができます。トリッキーなビジネス。次のような HTML マークアップを含む React 変数があるとします。

var thisIsMyCopy = '<p>copy copy copy <strong>strong copy</strong></p>';

この HTML を React コンポーネントに挿入するには、次のようなことをしたくなるかもしれません。

render: function() {
    return (
        <div className="content">{thisIsMyCopy}</div>
    );
}

ただし、この方法では、期待どおりに魔法のように HTML がレンダリングされるわけではありません。これを行うには、特別な React プロパティを使用する必要があります。dangerlySetInnerHTML.

render: function() {
    return (
        <div className="content" dangerouslySetInnerHTML={{__html: thisIsMyCopy}}></div>
    );
}

dangerlySetInnerHTML を使用すると、React は変数の値を信頼された HTML として扱い、それを直接レンダリングします。これにより、コンポーネントに HTML スニペットを動的に挿入できるようになり、柔軟性と効率が向上します。

注意: 使用には注意してください

dangerouslySetInnerHTML は強力なツールですが、次の機能が付属しています。安全上の警告。 React アプリケーションに HTML を直接埋め込むことができるため、XSS 攻撃などのセキュリティ上の脆弱性が発生する可能性があります。したがって、このプロパティは常に注意して使用し、絶対に必要な場合にのみ使用してください。

以上が「dangerouslySetInnerHTML」を使用して HTML 変数を JSX に安全に挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。