Có sự khác biệt "đằng sau hậu trường" nào so với việc đặt bên trongHTML của phần tử so với đặt thuộc tính nguy hiểm SetInnerHTML trên một phần tử không? Giả sử tôi vệ sinh mọi thứ đúng cách vì đơn giản.
Thí dụ:
var test = React.createClass({
render: function(){
return (
<div contentEditable='true' dangerouslySetInnerHTML={{ __html: "Hello" }}></div>
);
}
});
đấu với
var test = React.createClass({
componentDidUpdate: function(prevProp, prevState){
this.refs.test.innerHTML = "Hello";
},
render: function(){
return (
<div contentEditable='true' ref='test'></div>
);
}
});
Tôi đang làm một cái gì đó phức tạp hơn một chút so với ví dụ trên, nhưng ý tưởng tổng thể là như nhau
dangerouslySetInnerHTML
: webpackbin.com/bins/-KepHa-AMxQgGxOUnAac - tuns ra phương pháp innerHTML là gần như nhanh gấp hai lần (xem giao diện điều khiển trong webpackbin)