美文网首页
React中的HTML转义写法

React中的HTML转义写法

作者: GC风暴 | 来源:发表于2019-12-20 11:30 被阅读0次

在JSX中输出固定内容
直接使用UTF-8字符

<div>版权 ©</div>
使用HTML转义字符

<div>版权 ©</div>
或者十进制的转义字符

<div>版权 ©</div>
动态内容的转义
但是如果在外面加一层大括号的话,react为了防止xss会将转义后的字符实体再次转义

React 会将所有要显示到 DOM 的字符串转义,防止 XSS。所以,如果 JSX 中含有转义后的实体字符,比如 ©(©),则最后 DOM 中不会正确显示,因为 React 自动把 © 中的特殊字符转义了。

<div>{'版权 ©'}</div>
错误输出

版权 ©
正确写法:

直接使用UTF-8字符仍然可以正确输出

<div>{'版权 ©'}</div>
安全的做法是使用对应的Unicode码

<div>{'版权 \u00a9'}</div>
使用fromCharCode

<div>{'版权 ' + String.fromCharCode(169)}</div>
使用数组组装

<div>{['版权 ', <span>©</span>]}</div>
使用dangerouslySetInnerHTML,可以避免React转义字符

<div dangerouslySetInnerHTML={{ __html: '版权 ©' }} />

相关文章

  • React中的HTML转义写法

    在JSX中输出固定内容直接使用UTF-8字符 版权 © 使用HTML转义字符 版权 © 或者十进制的转义字符 版权...

  • vue1.x和vue2.0区别(未)

    一 转义输出html 弃用了原来 {{{message}}} 写法,只保留了 的写法。 二 v-for循环中常用...

  • React 笔记

    JSX React 采用jsx语法,需用bable.js转义. JSX 语法可以和html 混写. html以< ...

  • React(控制转义)

    在html标签中 在jsx中 转义效果都如下 想要不转义,可以这么写

  • Html/Xml中的转义字符

    HTML中的转义字符HTML中<, >,&等有特殊含义,(前两个字符用于链接签,&用于转义),不能直接使用。使用这...

  • Golang标准库——html

    html html包提供了用于转义和解转义HTML文本的函数。 func EscapeString EscapeS...

  • django的模板 - HTML转义

    Django对字符串进行自动HTML转义 会被自动转义的字符 html转义,就是将包含的html标签输出,而不被解...

  • React基础

    react组件使用结构赋值语法时是怎么解析的? balel转义后 什么是jsx? jsx是js和html的混合语法...

  • 用 Python 处理 HTML 转义字符的5种方式

    什么是转义字符 在 HTML 中 <、>、& 等字符有特殊含义(<,> 用于标签中,& 用于转义),他们不能在 H...

  • 小组分享--HTML转义字符&自定义标签

    emmmm 我们今天来讲讲html转义字符和自定义标签: 转义字符 先来说说html转义字符,转义字符大家应该都用...

网友评论

      本文标题:React中的HTML转义写法

      本文链接:https://www.haomeiwen.com/subject/kewbnctx.html