ホームページ  >  記事  >  ウェブフロントエンド  >  HTML コンテンツを React コンポーネントに動的に挿入するにはどうすればよいですか?

HTML コンテンツを React コンポーネントに動的に挿入するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-03 16:17:03421ブラウズ

How Can I Dynamically Insert HTML Content into My React Component?

React の危険な SetInnerHTML を利用して HTML コンテンツを動的に挿入する

React 開発の領域では、開発者は多くの場合、HTML コンテンツを動的に挿入する必要性に直面します。アプリケーションの状態に基づいて変化します。ここで、JSX 内で React 変数ステートメントを使用するという概念が登場します。

HTML を含む次のような変数があるシナリオを考えてみましょう。

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

目標JSX を使用してこの HTML を React コンポーネントに挿入します。ただし、以下に示す標準的な方法を使用してこれを実行しようとしても機能しません。

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

これは、React が HTML コンテンツを文字列として扱い、その HTML 文字をエスケープするためです。 React 変数を使用した HTML の動的挿入を有効にするには、dangerlySetInnerHTML と呼ばれる特別な React プロパティを利用する必要があります。このプロパティを使用すると、HTML 文字をエスケープする React のデフォルト動作をバイパスし、生の HTML コンテンツを DOM に挿入できます。

これを実装するには、コードを次のように変更します。

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

危険なほどSetInnerHTML を使用すると、変数に基づいて複雑な HTML コンテンツを React コンポーネントに動的に挿入できるため、アプリケーションの柔軟性と表現力が向上します。

以上がHTML コンテンツを React コンポーネントに動的に挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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