我想在我的 react js 應用程式中加粗字串的特定部分,但結果不正確;這是我的代碼并回傳:
data?.map((item) => (<li key={item.id}>{item.title.replace(new RegExp(value, 'g'), `<b>${value}</b>`)}</li>)) // rendered value: app<b>l</b>e
uj5u.com熱心網友回復:
因為您回傳的是字串,而不是反應元素。也就是說,app<b>l</b>e(一組反應元素)和'app<b>l</b>e'(一個字串)之間有一個重要的區別。
data?.map((item) => (
<li key={item.id}>
{
// spread to convert string to array
[...item.title].map((letter) =>
// if the letter matches, wrap in a <b/> tag
letter === value ? <b>{letter}</b> : letter)
}
</li>
))
https://codesandbox.io/s/pedantic-tree-r4egc?file=/src/App.js
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/336628.html
標籤:javascript 反应 正则表达式
