使用EmojiOne与React

时间:2016-08-10 15:13:08

标签: reactjs emojione

我一直在尝试使用带有标准.toImage的React.js的EmojiOne(参见docs http:// git.emojione.com/demos/latest/jstoimage.html)。这是我的代码看起来像或多或少

//react imports
import emoji from 'emojione';
//class component etc. render
return(
//other things from component
    {emoji.toImage(':smile:')}
)

哪个给了我

link to image

这是在inspect元素中的样子:

link to image

从我所知,emojione库将图像代码放入React作为文本,而不是作为元素。知道为什么吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

React正在逃避EmojiOne的输出,以避免跨站点脚本攻击。您可以(但可能不应该......)使用shadowHidden={true}将EmojiOne的输出作为“实际”HTML注入。

有人已经编写了一个可能有用的React EmojiOne包装器:https://github.com/pladaria/react-emojione

有关dangerouslySetInnerHTML的更多信息及其原因,请查看:https://facebook.github.io/react/tips/dangerously-set-inner-html.html