vue+element+node实现搜索功能

image.png

第一步 加上搜索框


image.png
<template slot="header">
          <el-input class="search" v-model="search" prefix-icon="el-icon-search" clearable placeholder="输入文章标题搜索" />
        </template>

然后在data中定义search 不然搜索框输入不了东西  

第二步 methods定义方法

searchItem() {
        const searchItemdata = this.allItems.filter(data => !this.search || data.title.toLowerCase().includes(this
          .search
          .toLowerCase()))
        this.allItems = searchItemdata
        this.setPaginations()
      },

上面的!this.search || data.title.toLowerCase 中的title是你查找的数据
有一些我调用的方法就不贴出来了 自己传递数据 调用查询的方法重新刷新页面

第三步

在watch监听数据变化然后调用更新数据
watch: {
      search: function (new_v) {
        if (new_v != '') {
          this.searchItem()
        } else {
          this.fetch()
        }
      }
    }

通用也是调用方法来实现查询数据 你自己修改一下 那个fetch就是我查询接口的方法 

成功上图


image.png
顺便贴一下样式 因为搜索框有点歪
<style lang="scss">
.el-icon-search {
    margin-left: 6px;
}
.el-icon-circle-close:before {
  margin-right: 20px;
}
</style>
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容