javascript - 在 JSX 表达式中连接字符串和 HTML

标签 javascript string reactjs concatenation

我正在尝试在 JSX 表达式中连接字符串和 HTML,但我似乎无法正确执行此操作。我的渲染函数中的代码如下所示:

<span>
   {'preferred string' || `Other string ${<a target="_blank" href={someVariable}>text inside link</a>}`}
</span>

我希望它呈现的是:“链接内的其他字符串文本”

它实际渲染的是“Other string [object Object]”

我尝试了几种不同的策略,但没有成功。非常感谢任何建议。

最佳答案

您想要以下内容:

<span>
  {'preferred string' || <p>Other string <a target="_blank" href={variable}>text inside</a></p>}
</span>

关键是添加了段落标签。在您的代码中,React 正在努力同时解释多种不同的语言。

请记住,与您提供的代码类似,此解决方案仅在“首选字符串”为空或 null 时才显示第二个结果,并且按原样,它是硬编码为具有某些值,因此or 语句的后半部分永远不会显示。

编辑:如果您的字符串实际上是变量,那么您需要再次退出“其他字符串”,如下所示:

<span>
  { stringVariable || <p>{otherStringVariable}<a target="_blank" href={variable}>{insideTextVariable}</a></p> }
</span>

关于javascript - 在 JSX 表达式中连接字符串和 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50864939/

相关文章:

javascript - 是否可以使用 Protractor 运行 IE11 仿真?

javascript - 在 jQueryUI 中拖动一个按钮

javascript - 如何使用 DOM JavaScript 检测元素?

vb.net - 如何在.net Framework 4中将字符串转换为base64

python - Storbinary 格式字符串 Python3 FTPLib

javascript - 组件无法访问上下文

javascript - 如何使用 CollectionFS 和 graphicsmagick 创建一个填充 meteor 中特定区域的缩略图

javascript - 如何用 JSS 覆盖类

css - 导致无法读取 CSS 文件的路径问题(React App)

python - 为什么我不能在一个类中连接 'str' 和 'instance' 对象?