Есть ли какое-то "закулисное" отличие от установки элемента innerHTML против установки свойства dangerouslySetInnerHTML для элемента? Предположим, я правильно дезинфицирую вещи ради простоты.
Пример:
var test = React.createClass({
render: function(){
return (
<div contentEditable='true' dangerouslySetInnerHTML={{ __html: "Hello" }}></div>
);
}
});
против
var test = React.createClass({
componentDidUpdate: function(prevProp, prevState){
this.refs.test.innerHTML = "Hello";
},
render: function(){
return (
<div contentEditable='true' ref='test'></div>
);
}
});
Я делаю что-то более сложное, чем приведенный выше пример, но общая идея та же
источник
dangerouslySetInnerHTML
: webpackbin.com/bins/-KepHa-AMxQgGxOUnAac - настраивает метод innerHTML почти в два раза быстрее (см. Консоль в webpackbin)Согласно Опасно указанному innerHTML ,
Узнайте больше об этом, используя ссылку ниже:
Документация : Реагировать на DOM Elements - опасно SetInnerHTML .
источник
Основано на ( опасно SetInnerHTML ).
Это опора, которая делает именно то, что вы хотите. Однако они называют его, чтобы передать, что его следует использовать с осторожностью
источник