我有一个类似reactjs的字符串:
var str =我喜欢stackoverflow。
我想用锚标记替换str变量中的“ stackoverflow”文本,例如
我尝试了替换,但无法正常工作
有人可以建议。
最佳答案
考虑首先从字符串中删除单词"stackoverflow"
,然后使用anchor标签呈现它:
const greeting = "I love stackoverflow";
const finalGreeting = greeting.replace('stackoverflow', '');
return <>
{finalGreeting}
<a href="https://stackoverflow.com">stackoverflow</a>
</>
dangerouslySetInnerHTML的替代解决方案:
const HelloStackOverflow = () => {
const greeting = "stackoverflow is my love";
const finalGreeting = greeting.replace('stackoverflow',
'<a href="https://stackoverflow.com">stackoverflow</a>');
return <span dangerouslySetInnerHTML={{ __html: finalGreeting }}/>
}
ReactDOM.render(
<HelloStackOverflow />,
document.getElementById('root')
);
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
<div id="root" />