最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue實現(xiàn)文字檢索時候?qū)⑺阉鲀?nèi)容標紅功能

 更新時間:2023年08月19日 10:06:44   作者:slom_fxt  
這篇文章主要介紹了vue中實現(xiàn)文字檢索時候?qū)⑺阉鲀?nèi)容標紅,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

實現(xiàn)結(jié)果

 html:

 <div class="searchBox">
        <span class="bt">標&#8195&#8195題</span>
        <div class="search">
            <div class="shuru">
                <!-- <span class="title">生產(chǎn)經(jīng)營</span> -->
                <input type="請輸入要查詢的內(nèi)容" v-model="searchText" @@keydown.enter="getSearch('btn')">
            </div>
            <div class="btn" @click="getSearch('btn')">
                <img src="../../assets/wyc/search.png" alt="">
            </div>
        </div>
    </div> 
<span v-html="brightenKeyword(el.filename,searchText)"></span>

搜索框樣式:

.searchBox {
    height: 70px;
    display: flex;
    align-items: center;
    .bt {
        font-family: 'pf';
        font-size: 18px;
        color: #000;
        font-weight: 400;
        margin-right: 45px;
    }
    .search {
        width: 756px;
        height: 46px;
        display: flex;
        position: relative;
        .shuru {
            width: 680px;
            height: 46px;
            background: #FFFFFF;
            border: 1px solid rgba(12, 174, 149, 1);
            border-radius: 8px 0px 0px 8px;
            box-sizing: border-box;
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 0 20px;
            .bt {
                white-space: nowrap;
                display: inline-block;
            }
            .title {
                font-family: 'pf';
                font-size: 16px;
                color: #333333;
                font-weight: 400;
                padding-right: 7px;
                white-space: nowrap;
                border-right: 1px solid #D8D8D8;
                margin-right: 12px;
            }
            input {
                width: 99%;
                height: 34px;
                box-sizing: border-box;
                border: none;
                outline: none;
                font-family: 'pf';
                font-size: 16px;
                color: #333333;
                font-weight: 400;
                white-space: nowrap;
            }
        }
        .btn {
            width: 78px;
            height: 46px;
            background: #0CAE95;
            border-radius: 0px 8px 8px 0px;
            display: flex;
            align-items: center;
            justify-content: center;
            img {
                width: 22px;
                height: 22px;
            }
        }
        .tips {
            width: 274px;
            display: flex;
            // align-items: center;
            position: absolute;
            right: -280px;
            top: 50%;
            transform: translateY(-50%);
            img {
                width: 18px;
                height: 18px;
            }
            span {
                font-family: 'pf';
                font-size: 12px;
                color: #7a7a7a;
                font-weight: 400;
                white-space: wrap;
                margin-left: 3px;
                display: none;
            }
            &:hover {
                span {
                    display: block;
                }
            }
        }
    }
}

JavaScript: 

    data: () => ({
        searchText: '',
    }),
        //搜索內(nèi)容的數(shù)據(jù)
        async getSearch(val) {
            console.log(val, this.searchText);
            this.$nextTick(()=>{
                this.getIsmDatas()
            })
        },
        //獲取需要標紅的文字
        getRedWords(contentText, keyword) {
            let keywordArray = keyword.split(" ");
            console.log(keywordArray, '有空格的字...');
            let wordsArray = [];
            for (let key of keywordArray) {
                if (contentText.includes(key)) {
                    wordsArray.push(key)
                }
            }
            // this.changeRedText(contentText,wordsArray)
            return wordsArray;
        },
        //將文字標紅
        brightenKeyword(contentText, keyword) {
            // debugger
            var res = contentText
            // keyword = keyword.replace("+",'')
            var judgeFn = new RegExp(/\s+/g); //空格的正則
            //有加號的時候
            if (keyword.includes('+')) {
                //    const Reg = new RegExp("+", 'g');
                keyword = keyword.replace("+", '')
            }
            //有空格的時候
            else if (judgeFn.test(keyword)) {
                console.log(keyword, "【結(jié)果】:內(nèi)容包含有空格!");
                let wordsArray = this.getRedWords(contentText, keyword);
                for (let word of wordsArray) {
                    if (word != "") {
                        // 設(shè)定需要檢索的模式
                        const Reg = new RegExp(word, 'g');
                        //替換每一個相同字
                        res = res.replace(Reg, `<span style="color: red; font-family: 'pfm';">${word}</span>`);
                    }
                }
                return res
            }
            // 判斷標題中是否包含關(guān)鍵字
            if (contentText.includes(keyword)) {
                const Reg = new RegExp(keyword, 'g');
                res = res.replace(Reg, `<span style="color: red; font-family: 'pfm';">${keyword}</span>`);
            }
            return res; //此時的res里已經(jīng)將需要標紅的字體帶上了格式(<span style="color:red"></span>)
        },
        //獲取表格數(shù)據(jù)
        async getIsmDatas() {
            let res = await this.$http.get(`/ctrl/ismStudy/getIsmDatas?unitType=${this.unitType}&jobnature=${this.tabOption['code_value']}&jobnatureText=${this.tabOption['code_name']}&page=${this.PageInfo.pagenum}&limit=${this.PageInfo.pagesize}`)
            if (res && res.status == 200) {
                this.tableData.tbody = res.data.data.data
                this.PageInfo.total = res.data.data.count
            }
        },

到此這篇關(guān)于vue中實現(xiàn)文字檢索時候?qū)⑺阉鲀?nèi)容標紅的文章就介紹到這了,更多相關(guān)vue搜索內(nèi)容標紅內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue.js計算屬性computed用法實例分析

    vue.js計算屬性computed用法實例分析

    這篇文章主要介紹了vue.js計算屬性computed用法,結(jié)合實例形式分析了vue.js使用computed方式進行屬性計算的相關(guān)操作技巧,需要的朋友可以參考下
    2018-07-07
  • 第一次使用webstrom簡單創(chuàng)建vue項目的一些報錯實戰(zhàn)記錄

    第一次使用webstrom簡單創(chuàng)建vue項目的一些報錯實戰(zhàn)記錄

    在使用webstorm新建vue項目時常會遇到一些報錯,特別是新手第一次運行項目,這篇文章主要給大家介紹了關(guān)于第一次使用webstrom簡單創(chuàng)建vue項目的一些報錯實戰(zhàn)記錄,需要的朋友可以參考下
    2023-02-02
  • elementplus實現(xiàn)多級表格(最后一級展示圖片)

    elementplus實現(xiàn)多級表格(最后一級展示圖片)

    本文主要介紹了elementplus實現(xiàn)多級表格(最后一級展示圖片),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • vue中的select綁定多個值

    vue中的select綁定多個值

    這篇文章主要介紹了vue中的select綁定多個值,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • Vue中修改Mint UI的Toast默認樣式之字體大小調(diào)整方式

    Vue中修改Mint UI的Toast默認樣式之字體大小調(diào)整方式

    這篇文章主要介紹了Vue中修改Mint UI的Toast默認樣式之字體大小調(diào)整方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • vue中緩存組件keep alive的介紹及使用方法

    vue中緩存組件keep alive的介紹及使用方法

    這篇文章主要介紹了vue緩存組件keepalive的相關(guān)資料,keep-alive組件是使用 include exclude這兩個屬性傳入組件名稱來確認哪些可以被緩存的,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2022-08-08
  • vue中使用canvas繪圖詳解

    vue中使用canvas繪圖詳解

    這篇文章主要介紹了vue中使用canvas繪圖方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-09-09
  • vue 監(jiān)聽鍵盤回車事件詳解 @keyup.enter || @keyup.enter.native

    vue 監(jiān)聽鍵盤回車事件詳解 @keyup.enter || @keyup.enter.native

    今天小編就為大家分享一篇vue 監(jiān)聽鍵盤回車事件詳解 @keyup.enter || @keyup.enter.native,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • 關(guān)于vue單文件中引用路徑的處理方法

    關(guān)于vue單文件中引用路徑的處理方法

    這篇文章主要給大家介紹了關(guān)于vue單文件中引用路徑處理的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用vue.js具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-01-01
  • 詳細講一講vue3下會造成響應(yīng)式丟失的情況

    詳細講一講vue3下會造成響應(yīng)式丟失的情況

    vue3開發(fā)過程中,綁定的響應(yīng)式數(shù)據(jù)失去了響應(yīng)式,如何解決問題呢,下面這篇文章主要給大家介紹了關(guān)于vue3下會造成響應(yīng)式丟失的情況,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-06-06

最新評論

余干县| 南投县| 北流市| 丹阳市| 蒙城县| 阜阳市| 屯留县| 揭西县| 鄂伦春自治旗| 辽源市| 会东县| 安达市| 巫山县| 法库县| 乌拉特中旗| 成安县| 青冈县| 石柱| 河北省| 宁武县| 新和县| 南开区| 洛扎县| 原平市| 祥云县| 贵州省| 十堰市| 濉溪县| 张北县| 辉县市| 天长市| 西乡县| 淅川县| 炎陵县| 锡林郭勒盟| 张家川| 广水市| 锡林浩特市| 陆川县| 林周县| 新民市|