亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

react中實現搜索結果中關鍵詞高亮顯示

發布時間:2020-08-21 21:12:17 來源:腳本之家 閱讀:753 作者:蓓蕾心晴 欄目:web開發

網上看到很多js實現的關鍵詞高亮顯示,方法都是一個道理,先獲取要替換的文字區域,然后在用正則匹配到關鍵詞,并進行替換。

react中實現起來似乎更簡單一些。

我這里的需求是通過搜索框搜索出新聞列表,在已經獲取到新聞列表數據中使用filter函數,獲取到每一個新聞的title,并定義關鍵詞正則,返回替換后的樣式,react不能直接解析帶html標簽的字符串,方法如下:

render() {
  const newsList=this.state.newsList;
  if(this.props.type==='tag'||this.props.type==='search'){
   let keyword=this.props.id; //這里是父組件傳過來的關鍵詞
   newsList.filter((value,index) => { //使用filter函數過濾新聞列表數據
    var re =new RegExp(keyword,"g"); //定義正則
    value.title=value.title.replace(re, `<span class="keyword">${keyword}</span>`); //進行替換,并定義高亮的樣式
   })
  }
  
  return (
   <div>
    {newsList.map((value,index) => {
     return (<NewsListItem news={value} key={index} />) //把新聞傳遞給新聞列表的單個新聞組件
     })
    }
    <div className="btn-more transition" onClick={this.fetchMoreList}>{this.state.loadingText}</div>
   </div>
  );
 }

NewsListItem組件渲染title:

<div className="item-title" dangerouslySetInnerHTML = {{ __html:news.title }}></div>

react中實現搜索結果中關鍵詞高亮顯示

react中實現搜索結果中關鍵詞高亮顯示

總結

以上所述是小編給大家介紹的react中實現搜索結果中關鍵詞高亮顯示,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

五台县| 安丘市| 板桥市| 广安市| 基隆市| 济源市| 鞍山市| 星座| 灵山县| 城市| 舟山市| 武宣县| 怀柔区| 日照市| 民权县| 华亭县| 和硕县| 唐海县| 阜平县| 视频| 赞皇县| 化德县| 临汾市| 淮安市| 灌云县| 徐州市| 忻州市| 西乡县| 西充县| 阿坝| 蒙山县| 东海县| 巫溪县| 永康市| 大埔区| 北碚区| 平泉县| 尉氏县| 旬邑县| 阿尔山市| 游戏|