直接上代码:
1、写一个防抖的工具函数
tools.js- // 防抖
- export const _debounce = (fn, delay = 300) => {
- var timer = null;
- return function () {
- var _this = this;
- var args = arguments;
- if (timer) clearTimeout(timer);
- timer = setTimeout(function () {
- fn.apply(_this, args);
- }, delay);
- };
- }
复制代码 2、下拉框的options数据源
citys.js(这里只写一少部分)- export default [
- {value: 110100, name: "北京市"},
- {value: 120100, name: "天津市"},
- {value: 130100, name: "石家庄市"},
- {value: 130200, name: "唐山市"},
- {value: 130300, name: "秦皇岛市"},
- {value: 130400, name: "邯郸市"},
- {value: 130500, name: "邢台市"},
- {value: 130600, name: "保定市"},
- {value: 130700, name: "张家口市"},
- {value: 130800, name: "承德市"},
- {value: 130900, name: "沧州市"},
- {value: 131000, name: "廊坊市"},
- {value: 131100, name: "衡水市"},
- {value: 140100, name: "太原市"},
- ......
- ]
复制代码 3、业务代码
index.vue- <template>
-
- <el-form :inline="true" :model="dataForm" size="small" >
- <el-form-item>
- <el-select v-model="dataForm.cityCode" filterable :filter-method="filterMethod"
- v-el-select-loadmore="loadMore(rangeNumber)" @visible-change="visibleChange" placeholder="城市" clearable>
- <el-option :key="item.name + '' + i" :label="item.name" :value="item.value"
- v-for="(item, i) in citysList.slice(0, rangeNumber)"></el-option>
- </el-select>
- </el-form-item>
- </el-form>
-
- </template>
复制代码 4、效果
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |