我有一个
React component,其道具我想要分配一个包含JavaScript变量和HTML实体的字符串.
我尝试过的一些方法导致HTML实体被渲染转义.例如,& ndash;从字面上理解为“& ndash;”而不是“ – ”.
有没有办法让一个HTML实体在一个被分配给React道具的JSX动态内容块中呈现非转义?
尝试了
...
问题:在渲染输出中,& ndash;字面意思是“& ndash;”而不是“ – ”.
尝试构造一些没有引号的简单JSX:
问题:这在编译时因语法错误而失败.
试图通过将JSX包装在< span />中来解决语法错误.元件:
{name} – {description}} ...
问题:这有效,但我宁愿避免多余的< span />元素存在于渲染输出中.
尝试用Unicode数字字符引用替换HTML实体:
问题:
>这有效,但(在我看来)使代码少一些
可读. (更明显的是“ndash”而不是“2013”
代表一个短划线字符.)
>此外,这涉及-operator连接,它在我的团队的JSLint检查器中触发意外的字符串连接prefer-template错误;相反,使用字符串插值的解决方案会更好.