watch:支持异步
计算属性不支持异步
<script src="/lib/vue.js"></script>
</head>
<body>
<div id="box">
<input type="text" v-model="mytext">
<button >搜索</button>
<ul>
<li v-for="item in datalist" :key="item">
{{item}}
</li>
</ul>
</div>
<script>
new Vue({
el:"#box",
data:{
mytext:"",
datalist:['aaa','abb','bbc','cca','ddd','dac','abc','cbd' ],
// 原数组
originList:['aaa','abb','bbc','cca','ddd','dac','abc','cbd' ]
},
watch:{
mytext(newval){
// 异步
setTimeout(()=>{
this.datalist = this.originList.filter(item=> item.includes(newval))
},2000)
}
}
})
</script>
</body>