vue项目实现搜索内容变红色显示

 更新时间:2022年12月21日 10:13:09   作者:coderSlow  
这篇文章主要为大家介绍了vue项目实现搜索内容变红色显示,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

1、经过二次处理后数据的使用

核心思想就是对从后台搜索获取到的数据进行二次加工处理,来达到想要的效果

<ul class="content_box">
  <li class="content_item" v-for="(item, index) in contentListData" :key="index" @click="searchLinkDetails(item)">
    <div class="title" v-html="item.title"></div>
    <div class="content" v-html="item.originalContent"></div>
    <div class="time">{{item.publishTime}}</div>
  </li>
</ul>

2、data中要定义的数据参数

searchValue: '', // 搜索文本
contentListData: []

3、获取列表数据并二次处理数据

// 获取列表的方法
    async getDataList() {
      let params = {
        websiteId: 4,
        content: this.searchValue,
        current: this.currentPage,
        size: 10,
        timeRange: this.searchTimeCheck,
        searchRange: this.searchScopeCheck
      }
      let res = await searchList(params)
      this.contentListData = res.data.records
      this.total = res.data.total
      // 核心处理方法开始-----------------------------------------------》
      if (this.searchValue && this.searchValue.length > 0) {
        const reg = `/${this.searchValue}/g`;
        this.contentListData.forEach((item) => {
          item.title = item.title.replace(
            eval(reg),
            "<span style='color: red;'>" + this.searchValue + "</span>"
          );
          if (item.originalContent) {
            item.originalContent = item.originalContent.replace(
              eval(reg),
              "<span style='color: red;'>" + this.searchValue + "</span>"
            );
          }
        });
      }
      // 核心处理方法结束------------------------------------------------》
    },

总结核心代码和具体效果如下

1、数据二次处理的核心方法

if (this.searchValue && this.searchValue.length > 0) {
    const reg = `/${this.searchValue}/g`;
    this.contentListData.forEach((item) => {
      item.title = item.title.replace(
        eval(reg),
        "<span style='color: red;'>" + this.searchValue + "</span>"
      );
      if (item.originalContent) {
        item.originalContent = item.originalContent.replace(
          eval(reg),
          "<span style='color: red;'>" + this.searchValue + "</span>"
        );
      }
    });
}

2、实现效果

以上就是vue项目实现搜索内容变红色显示的详细内容,更多关于vue搜索内容红色显示的资料请关注脚本之家其它相关文章!

相关文章

  • vue.js实现用户评论、登录、注册、及修改信息功能

    vue.js实现用户评论、登录、注册、及修改信息功能

    这篇文章主要为大家详细介绍了vue.js实现用户评论、登录、注册、及修改信息功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • vue+epubjs实现电子书阅读器的基本功能

    vue+epubjs实现电子书阅读器的基本功能

    这篇文章主要为大家详细介绍了如何使用vue+epubjs实现电子书阅读器的基本功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-11-11
  • 详解如何在vue+element-ui的项目中封装dialog组件

    详解如何在vue+element-ui的项目中封装dialog组件

    这篇文章主要介绍了详解如何在vue+element-ui的项目中封装dialog组件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • 手动实现vue2.0的双向数据绑定原理详解

    手动实现vue2.0的双向数据绑定原理详解

    这篇文章主要给大家介绍了关于手动实现vue2.0的双向数据绑定原理的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • Vue3项目打包后部署到服务器 请求不到后台接口解决方法

    Vue3项目打包后部署到服务器 请求不到后台接口解决方法

    在本篇文章里小编给大家整理了关于Vue3项目打包后部署到服务器 请求不到后台接口解决方法,有需要的朋友们可以参考下。
    2020-02-02
  • vue component组件使用方法详解

    vue component组件使用方法详解

    这篇文章主要为大家详细介绍了vue component组件的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • 一文详解怎么安装离线vue环境

    一文详解怎么安装离线vue环境

    这篇文章主要给大家介绍了关于怎么安装离线vue环境的相关资料,由于公司要求在内网开发项目,而内网不能连接外网,因此只能离线安装vue环境,需要的朋友可以参考下
    2023-12-12
  • vue-cli的eslint相关用法

    vue-cli的eslint相关用法

    本篇文章主要介绍了vue-cli的eslint相关用法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • vue实现列表倒计时

    vue实现列表倒计时

    这篇文章主要为大家详细介绍了vue实现列表倒计时,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-09-09
  • 搭建vue3项目以及按需引入element-ui框架组件全过程

    搭建vue3项目以及按需引入element-ui框架组件全过程

    element是基于vue.js框架开发的快速搭建前端的UI框架,下面这篇文章主要给大家介绍了关于搭建vue3项目以及按需引入element-ui框架组件的相关资料,文中通过图文以及代码介绍的非常详细,需要的朋友可以参考下
    2024-02-02

最新评论