Existe-t-il une différence «en coulisse» entre la définition de innerHTML d'un élément et la définition de la propriété dangerouslySetInnerHTML sur un élément? Supposons que je désinfecte correctement les choses dans un souci de simplicité.
Exemple:
var test = React.createClass({
render: function(){
return (
<div contentEditable='true' dangerouslySetInnerHTML={{ __html: "Hello" }}></div>
);
}
});
contre
var test = React.createClass({
componentDidUpdate: function(prevProp, prevState){
this.refs.test.innerHTML = "Hello";
},
render: function(){
return (
<div contentEditable='true' ref='test'></div>
);
}
});
Je fais quelque chose d'un peu plus compliqué que l'exemple ci-dessus, mais l'idée générale est la même
dangerouslySetInnerHTML
: webpackbin.com/bins/-KepHa-AMxQgGxOUnAac - la méthode innerHTML est presque deux fois plus rapide (voir console dans le webpackbin)