Apakah ada perbedaan "di balik layar" dari pengaturan innerHTML elemen vs pengaturan properti hazardSetInnerHTML pada elemen? Anggaplah saya membersihkan barang dengan benar demi kesederhanaan.
Contoh:
var test = React.createClass({
render: function(){
return (
<div contentEditable='true' dangerouslySetInnerHTML={{ __html: "Hello" }}></div>
);
}
});
vs.
var test = React.createClass({
componentDidUpdate: function(prevProp, prevState){
this.refs.test.innerHTML = "Hello";
},
render: function(){
return (
<div contentEditable='true' ref='test'></div>
);
}
});
Saya melakukan sesuatu yang sedikit lebih rumit daripada contoh di atas, tetapi gagasan keseluruhannya sama
sumber
dangerouslySetInnerHTML
: webpackbin.com/bins/-KepHa-AMxQgGxOUnAac - menyelaraskan metode innerHTML hampir dua kali lebih cepat (lihat konsol di webpackbin)Menurut Dangerously Set innerHTML ,
Baca lebih lanjut tentang itu menggunakan tautan di bawah ini:
dokumentasi : Bereaksi DOM Elements - berbahayaSetInnerHTML .
sumber
Berdasarkan ( berbahayaSetInnerHTML ).
Ini adalah alat peraga yang melakukan apa yang Anda inginkan. Namun mereka menamainya untuk menyampaikan bahwa itu harus digunakan dengan hati-hati
sumber