根据需求,前端页面有时需要动态展示后端返回的代码,但是此时的代码是字符串类型,直接展示,页面显示的只是字符串,这时就用到了react标签属性dangerouslySetInnerHtml属性;
dangerouslySetInnerHtml用法:
dangerouslySetInnerHtml = {__html:'这里是后端返回字符串代码'}
在使用reactjs库的时候,会遇到将一段html的字符串,然后要将它插入页面中以html的形式展现,然而直接插入的话页面显示的就是这段字符串,而不会进行转义,可以用一下方法插入,便可以html的形式展现:
<div dangerouslySetInnerHTML={{__html: "<p>爱死费崇政</p>"}} />
直接插入是字符串:
我认为是安全机制引起的,因为不合时宜的插入HTML脚本容易遭受XSS攻击,而插入字符串则不会,要想安全的插入HTML字符串式的代码,可以使用该属性将其转换。