12.列表过滤.html 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. </head>
  8. <body>
  9. <div id="app">
  10. 关键字搜索:<input type="text" placeholder="请输入关键字" v-model="keyWords">
  11. <br>
  12. <div v-for="(item,index) in list" :key="index">
  13. {{index + 1}}.我叫{{item.name}}--今年{{item.age}}了--我是{{item.sex}}孩
  14. </div>
  15. </div>
  16. <script src="./vue.js"> </script>
  17. <script>
  18. var vm = new Vue({
  19. el: "#app",
  20. data: {
  21. keyWords:"",
  22. arr: [
  23. {
  24. name: "Lucy",
  25. age: 11,
  26. sex: "女",
  27. },
  28. {
  29. name: "LiLi",
  30. age: 31,
  31. sex: "男",
  32. },
  33. {
  34. name: "八戒",
  35. age: 21,
  36. sex: "男",
  37. },
  38. {
  39. name: "八卦",
  40. age: 23,
  41. sex: "男",
  42. },
  43. {
  44. name: "孙悟空",
  45. age: 27,
  46. sex: "男",
  47. },
  48. {
  49. name: "唐僧",
  50. age: 33,
  51. sex: "女",
  52. },
  53. ],
  54. },
  55. computed:{
  56. list(){
  57. return this.arr.filter((item) =>{
  58. return item.sex.indexOf(this.keyWords) !== -1;
  59. })
  60. }
  61. }
  62. })
  63. </script>
  64. </body>
  65. </html>