react动态设置html内容,javascript – React props:在JSX动态内容中使用HTML实体?

本文探讨了在React组件中如何正确地显示包含JavaScript变量和HTML实体的字符串,而不让实体被转义。作者遇到的问题是–被渲染为字面的“–”,而非预期的“–”。尝试了不加引号的JSX、使用元素以及使用Unicode字符引用,但分别遇到了语法错误、额外DOM元素和可读性问题。最终寻求一种既能保持代码可读性又不引入额外元素的方法。
摘要由CSDN通过智能技术生成

我有一个

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错误;相反,使用字符串插值的解决方案会更好.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值