假设我有一个对象数组:
const options = [
{
text: "this is the text",
description: "The word 'test' should be bold"
},
{
text: "this is the text",
description: "The word 'another-word' should be bold"
}
]
该组件呈现如下内容:
return (
{
options.map(option => {
<p className="text-green-500">{option.description}</p>
})
}
)
现在我必须将单词/s“test”和“another-word”分别加粗。在某些情况下,它只能是单词中的字符。
2条答案
按热度按时间k4ymrczo1#
您可以创建一个函数,用
<b>
Package 器替换''
中的字符串。然后像这样设置innerHTML:
如果这些字符串是用户输入,则在执行此操作之前需要清理字符串。
一个二个一个一个
您可以完全避免innerHTML路径,在这种情况下,您需要将每个字符串拆分为片段,然后呈现它们。
并将其渲染为:
ttcibm8c2#
这可能是最简单的方法,只需从处理加粗文本部分的函数返回一块JSX。
Stackblitz运行代码:https://stackblitz.com/edit/react-ts-gewz6v?file=App.tsx,index.tsx