const [innerHtml, setInnerHtml] = useState('');
<div dangerouslySetInnerHTML={{
__html: innerHtml
}}></div>
<Input value={innerHtml} onChange={(e) => setInnerHtml(e.target.value)}></Input>
如上面的代码,大概就是input输入的内容,放到div的dangerouslySetInnerHTML中。
然后我input输入
<script type="text/javascript">console.log('我')</script>
页面上script标签已经有了,但是在控制台未看到log,是不是react对dangerouslySetInnerHTML做了script的过滤?
和react无关,innerHtml文档写了,HTML 5 中指定不执行由 innerHTML 插入的 <script> 标签。