vue 实现输入框的模糊查询

template里代码段: 

搜索

script 里的代码段:

export default{
   data(){
     datas: [], //所有数据
     viewData: [], // 展示的数据
     searchVal: ''
   },
   created (){
      this.getData()
   }
   methods: {
      getData: function (){ //获取接口数据,渲染到页面表格
      },
      searchApp: function (){
         let self = this
         let dataList = [] //符合查找的数据
         this.datas.forEach( function (element) {
             if(element.name.indexOf(self.searchVal) !== -1) {
                 dataList.push(element)
             }
         })
         this.viewData = dataList
         return this.viewData
      },
      searchInput: function(){
         if(document.querySelector('input') == document.activeElement) {
            this.searchApp(this.searchVal.trim())
         }
      }
   },
   watch: {
      searchVal: function(){
          this.searchInput()
      }
   }
}

 

在这里再把之前普通html文件的输入框模糊查询给粘出来:


    
    
  • a
  • a1
  • a11
  • a111
  • a1111
  • b
  • b1
  • b11
  • b111
  • b1111
  • c
  • c1
  • c11
  • c111
  • c1111

 

你可能感兴趣的:(vue 实现输入框的模糊查询)