Ответ 1
автоматически реагирует на все.
поэтому, допустим, у вас есть эта строка
var htmlString = '<img src="javascript:alert('XSS!')" />';
если вы попытаетесь отобразить эту строку в реакции
render() {
return (
<div>{htmlString}</div>
);
}
вы буквально увидите на странице всю строку, включая тег элемента <span>
. aka в браузере вы увидите <img src="javascript:alert('XSS!')" />
если вы просмотрите исходный html, вы увидите
<span>"<img src="javascript:alert('XSS!')" />"</span>
Вот более подробная информация о том, что такое XSS-атака
React в основном делает так, что вы не можете вставлять разметку, если вы сами не создаете элементы в функции рендеринга... при этом у них есть функция, которая допускает такой рендеринг, который называется dangerouslySetInnerHTML
... вот более подробная информация об этом