作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在创建自定义自动完成组件时,我遇到了这个问题:我得到了一个字符串和子字符串(字符串的第一部分,用户在自动竞争字段中输入的部分),我需要在结果列表中以粗体显示该部分。
但我不能使用str.replace
喜欢
var re = new RegExp(find, 'g');
return str.replace(re, '<b>'+find+'</b>');
因为它将返回字符串并且我需要 JSX。
所以基本上问题是 - 我有 JSX,我需要将其中的某些部分加粗。我需要一个接受 JSX 和注入(inject) <b>
的函数在特殊位置标记它
这就是我到目前为止所得到的
boldJSX(str, find){
if(!find) return str;
return <span><b>{find}</b>{str.slice(find.length)}</span>
}
最佳答案
我似乎为那些 future 来到这里的人找到了一种更加“ react ”的方法
function BoldedText({ text, shouldBeBold }) {
const textArray = text.split(shouldBeBold);
return (
<span>
{textArray.map((item, index) => (
<>
{item}
{index !== textArray.length - 1 && (
<b>{shouldBeBold}</b>
)}
</>
))}
</span>
);
}
关于javascript - React JSX - 以粗体显示子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51022834/
下面是我用来制作 1px 文本描边轮廓的代码。但是如何使轮廓变粗呢?如果我只是用“5px”替换所有“1px”,结果看起来很疯狂。 HTML Hello! CSS .element { color:
我是一名优秀的程序员,十分优秀!