我想我知道为什么会这样。看来这与FontAwesome
5用
<i>标签替换标签的方式有关
<svg>。我相信这与React处理从DOM中删除元素的方式不兼容。参见:https : //fontawesome.com/how-to-use/svg-with-
js#with-jquery
该文档的底部列出了我使用的解决方法,该方法包括:
<script> FontAwesomeConfig = { autoReplaceSvg: 'nest' }</script>
我将其包含在标题中,可能会有更好的放置位置,但是它似乎至少可以解决我的问题。这可能会影响您对专门针对FontAwesome元素的任何类的某些CSS逻辑,这些元素是其他类/
id的直接子元素,因此您可能只需要检查以确保所有样式看起来正确即可,因为它现在正在嵌套在
<svg>该范围内标签
<i>的标签,而不是取代它。
另外,您也可以
<i>自己包装标签。例如:
{this.state.loading === true ? <div><i className="fa-spin fas fa-sync"></i></div> ...
应该管用。
更新(12/10/18):现在在文档中有一个更好的解释,说明为什么在官方文档中会发生这种情况,并在此处解释了如何将此FontAwesome与javascript库集成。
<i>现在,在脚本标签内部完成了自动嵌套标签的方法,以获取FontAwesome
javascript库
<scriptsrc="https://use.fontawesome.com/releases/v5.5.0/js/all.js" data-auto-replace-svg="nest"></script>。现在,FontAwesome
React库也获得了官方支持,该库也解决了此问题。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)