Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Memasukkan Kandungan HTML Secara Dinamik ke dalam Komponen Reaksi Saya?

Bagaimanakah Saya Boleh Memasukkan Kandungan HTML Secara Dinamik ke dalam Komponen Reaksi Saya?

Patricia Arquette
Patricia Arquetteasal
2024-11-03 16:17:03480semak imbas

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

Memanfaatkan React yang berbahayaSetInnerHTML untuk Memasukkan Kandungan HTML Secara Dinamik

Dalam bidang pembangunan React, pembangun sering menghadapi keperluan untuk memasukkan kandungan HTML yang dinamik perubahan berdasarkan keadaan aplikasi. Di sinilah konsep menggunakan pernyataan pembolehubah React dalam JSX dimainkan.

Pertimbangkan senario di mana anda mempunyai pembolehubah, seperti berikut, yang mengandungi HTML:

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

Matlamat anda adalah untuk memasukkan HTML ini ke dalam komponen React anda menggunakan JSX. Walau bagaimanapun, percubaan untuk melakukan ini menggunakan kaedah standard yang ditunjukkan di bawah tidak akan berfungsi:

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

Ini kerana React menganggap kandungan HTML sebagai rentetan dan melepaskan aksara HTMLnya. Untuk mendayakan sisipan dinamik HTML dengan pembolehubah React, anda mesti menggunakan sifat React khas yang dipanggil dangerouslySetInnerHTML. Sifat ini membolehkan anda memintas kelakuan lalai React untuk melarikan diri daripada aksara HTML dan memasukkan kandungan HTML mentah ke dalam DOM.

Untuk melaksanakan ini, ubah suai kod anda seperti berikut:

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

Dengan menggunakan dangerouslySetInnerHTML, anda boleh memasukkan kandungan HTML yang kompleks secara dinamik ke dalam komponen React anda berdasarkan pembolehubah, membolehkan lebih fleksibiliti dan kuasa ekspresif dalam aplikasi anda.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memasukkan Kandungan HTML Secara Dinamik ke dalam Komponen Reaksi Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn