react怎么实现搜索关键字高亮-世界独家

来源:php中文网 | 2022-12-30 14:04:10 |

本教程操作环境:Windows10系统、react18.0.0版、Dell G3电脑。

react怎么实现搜索关键字高亮?

React实现快速搜索并且关键字高亮


【资料图】

需求:

点击搜索按钮,弹出模糊匹配列表。

下拉列表选择选项,点击后跳转相应页面关键字所在地。

思路:

利用正则从列表匹配到关键词,再使用标签包含关键词,

给标签添加color属性,使用react富文本渲染方式进行渲染

js内容:

/**     * 关键字变色     * @params content 内容     * @params keyword 关键词     * @params tagName 标签名    */    warpTag(content, keyword, tagName) {      if (content === "No results") {        return content      }      const a = content.toLowerCase()      const b = keyword.toLowerCase()      const indexof = a.indexOf(b)      const c = indexof > -1 ? content.substr(indexof, keyword.length) : ""      const val = `<${tagName} style="color:#FF6600;">${c}</${tagName}>`      const regS = new RegExp(keyword, "gi")      console.log("regS",regS,keyword,val)      console.log("regS222222",content,content.replace(regS, val))      return content.replace(regS, val)    }

jsx内容:

<span dangerouslySetInnerHTML={{__html: this.warpTag(item.n, keyword, "span")}}></span>

推荐学习:《react视频教程》

以上就是react怎么实现搜索关键字高亮的详细内容,更多请关注php中文网其它相关文章!

关键词: React