1.模拟移动端输入框输入搜索城市搜索功能
2.具体实现功能步骤如下:
过程如下:
搜索功能实现过程:
1.通过父组件将cities对象中的数据传递给搜索框子组件
2.双向绑定搜索框中的数据keyword
3.监听搜索框中数据的改变
4.设置定时器,当搜索框中的输入发生变化时通过循环来匹配到搜索的数据
4.1先通过in循环来获取每个数组的下标
4.2通过每个下表,循环对应下标中的数组
4.3如果数组中存在输入框中存在的内容,不管输入拼音或者文字
4.4将匹配的内容存放到新的数组中
5.将新生成的搜索到的内容的数组赋值给list
6.template中循环list,将搜索到的内容在li展示出来
7.细节处理:
7.1如果输入框中没有输入内容keyword,则清空list,使原来搜索到的内容也不显示
7.2通过计算属性计算,如果list.length==0时,此时提示用户没有找到匹配的数据
7.3当搜索到的内容过多超过屏幕的时候,通过引入better-scroll滚动条组件
7.4此时给list的div设置ref=“search”,获取整个list的div内容,生成滚动条
3.过程实现见代码:
说明:样式使用的是stylus
<template>
<div>
<!-- 城市搜索框 -->
<div class="search">
<input class="input-search" v-model="keyw