经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » JS/JS库/框架 » Vue.js » 查看文章
vue input输入框关键字筛选检索列表数据展示
来源:jb51  时间:2019/5/29 8:36:27  对本文有异议

想必大家在项目开发中难免会用到关键字筛选的功能,正好这次项目有需求要做这一块,就整理一下vue的input输入框输入关键字检索数据列表的代码。下面直接上代码:

html:

  1. <!-- 筛选demo -->
  2. <template>
  3. <div>
  4. <input type="text" v-model="search">
  5. <ul>
  6. <!-- 注意!注意!注意!这里循环遍历的是items,不再是data里的list数组 -->
  7. <li v-for="(item,index) in items">
  8. <span>{{item.name}}</span>
  9. <span>{{item.msg}}</span>
  10. </li>
  11. </ul>
  12. </div>
  13. </template>

匹配(所有||单个)字段 > js:

  1. export default {
  2. data () {
  3. return {
  4. search:'',
  5. list:[
  6. {name:'AAA',msg:'aaa文本介绍1'},
  7. {name:'BBB',msg:'bbb文本介绍2'},
  8. {name:'CCC',msg:'ccc文本介绍3'},
  9. {name:'DDD',msg:'ddd文本介绍4'},
  10. {name:'EEE',msg:'eee文本介绍5'},
  11. ]
  12. }
  13. },
  14. computed: {
  15. //过滤方法
  16. items: function() {
  17. var _search = this.search;
  18. if (_search) {
  19. //不区分大小写处理
  20. var reg = new RegExp(_search, 'ig')
  21. //es6 filter过滤匹配,有则返回当前,无则返回所有
  22. return this.list.filter(function(e) {
  23. //匹配所有字段
  24. return Object.keys(e).some(function(key) {
  25. return e[key].match(reg);
  26. })
  27. //匹配某个字段
  28. // return e.name.match(reg);
  29. })
  30. };
  31. return this.list;
  32. }
  33. },
  34. }
  35.  

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持w3xue。

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号