直接使用UTF-8字符html
<div>版權 ©</div>
使用HTML轉義字符react
<div>版權 ©</div>
或者十進制的轉義字符git
<div>版權 ©</div>
可是若是在外面加一層大括號的話,react爲了防止xss會將轉義後的字符實體再次轉義github
React 會將全部要顯示到 DOM 的字符串轉義,防止 XSS。因此,若是 JSX 中含有轉義後的實體字符,好比 ©(©),則最後 DOM 中不會正確顯示,由於 React 自動把 © 中的特殊字符轉義了。數組
<div>{'版權 ©'}</div>
錯誤輸出安全
版權 ©
正確寫法:xss
直接使用UTF-8字符仍然能夠正確輸出spa
<div>{'版權 ©'}</div>
安全的作法是使用對應的Unicode碼code
<div>{'版權 \u00a9'}</div>
使用fromCharCode
htm
<div>{'版權 ' + String.fromCharCode(169)}</div>
使用數組組裝
<div>{['版權 ', <span>©</span>]}</div>
使用dangerouslySetInnerHTML
,能夠避免React轉義字符
<div dangerouslySetInnerHTML={{ __html: '版權 ©' }} />