Bir öğenin innerHTML'sinin ayarlanması ile elementin dangerouslySetInnerHTML özelliğinin ayarlanması arasında herhangi bir "sahne arkası" farkı var mı? Basitlik uğruna işleri düzgün bir şekilde sterilize ettiğimi varsayın.
Misal:
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>
);
}
});
Yukarıdaki örnekten biraz daha karmaşık bir şey yapıyorum, ama genel fikir aynı
dangerouslySetInnerHTML
: webpackbin.com/bins/-KepHa-AMxQgGxOUnAac - innerHTML yöntemini neredeyse iki kat daha hızlı ayarlıyor (webpackbin'deki konsola bakın)