在输入框中输入内容,显示不出来符合条件的内容

    1. (vuejs的v2.0)在输入框中输入内容,显示不出来符合条件的内容

    1. <!DOCTYPE html>
      <html lang="en">
      <head>

         <meta charset="UTF-8">
         <title>track-by</title>

      </head>
      <body>

         <div id="app">
             <input v-model="input">
             <p>请在输入框内输入内容,只会将符合条件的内容显示出来</p>
             <ul>
                 <li v-for="item in input1">{{item}}</li>
             </ul>
         </div>
         <script src="vue.js"></script>
         <script>
             new Vue({
                 el:"#app",
                 input:"",
                 data:{
                     items:{
                         name:"wyq",
                         age:"25",
                         sex:"girl",
                     }
                 },
                 computed: {
                     input1: function () {
                         return this.items.filter(function (input) {
                             return input.indexOf(this.searchQuery) !== -1
                         })
                     }
                 }
             });
         </script>

      </body>
      </html>

      1. 网页没显示

      2. 出错提示:
        图片描述

    阅读 6.1k
    2 个回答

    你写的多处错误!下面为给你修改下,看来你js基础很弱,建议多看看基础,

    new Vue({
            el: "#app",
            data: {
                searchQuery: "",
                items: [{
                    name: "wyq",
                    age: "25",
                    sex: "girl",
                },{
                    name: "Cary",
                    age: "21",
                    sex: "boy",
                },{
                    name: "Shelly",
                    age: "24",
                    sex: "girl",
                }]
            }
            ....    
        });

    请多看看这个官方例子

    item应该是一个数组、filter是数组ES5的新方法

    撰写回答
    你尚未登录,登录后可以
    • 和开发者交流问题的细节
    • 关注并接收问题和回答的更新提醒
    • 参与内容的编辑和改进,让解决方法与时俱进
    推荐问题