当前位置: 首页 > news >正文

el-cascader级联选择器加载远程数据、默认开始加载固定条、可以根据搜索加载远程数据。

  • 加载用户列表分页请求、默认请求20条数据。想添加远程搜索用户功能。原有的方法filter-method不能监听到输入清空数据的时候。这样搜索完无法返回默认的20条数据。
  • 直接监听级联选择的v-model绑定的值是无法检测到用户自己输入的。

解决思路:

  1. el-cascader 没有提供监听用户输入的内容、要单独获取到input添加监听事件。
  2. 添加完事件、可以watch监听下用户的输入。清空输入时候可以重新加载数据。
  3. 使用befor-filter先做根据搜索内容请求接口(函数返回true才会执行filter-method)、再调用filter-method返回true就行了。
    在这里插入图片描述
    在这里插入图片描述

下面是个模拟的加载用户列表的demo

<template><div class="page"><el-cascader v-model="model.userIds" class="user-cascader" :options="userList" filterable :before-filter="beforeFilterUser"   :filter-method="filterUser" clearable @change="changeUser" ></el-cascader></div>
</template><script>
export default {data() {return {model: {userIds: [],},userList: [], //用户列表search: '',timer: null}},watch: {//监听搜索内容search(val, old) {if(this.timer) clearTimeout(this.timer)this.timer = setTimeout(async ()=> {if(!val) this.loadUserList()},300)}},mounted() {this.init()this.loadUserList()},methods: {//添加监听事件init() {this.$nextTick(()=> {let dom = document.getElementsByClassName('user-cascader')[0]let inputDom = document.getElementsByClassName('el-input__inner')[0]inputDom.addEventListener('input',(e)=> {// console.log(e.target.value,'输入的是')this.search = e.target.value})})},//加载用户列表loadUserList(keyword) {// ...// this.userList = res.data},async beforeFilterUser(node, keyword) {//先根据关键词加载用户列表 再return trueawait this.loadUserList(keyword)return true},filterUser(node, keyword) {return true},changeUser(val) {}}
}
</script><style scoped lang="less">
.page {padding: 20px;
}
</style>
http://www.lryc.cn/news/106388.html

相关文章:

  • 大数据技术之Clickhouse---入门篇---SQL操作、副本
  • 【Rust 基础篇】Rust Sized Trait:理解Sized Trait与动态大小类型
  • 前端框架学习-Vue(三)
  • HTML <rt> 标签
  • VMware Linux Centos 配置网络并设置为静态ip
  • 【Leetcode 30天Pandas挑战】学习记录
  • 微信小程序使用 canvas 2d 实现签字板组件
  • 区块链赋能新时代司法体系,中移链打造可信存证服务
  • ELK报错no handler found for uri and method [PUT] 原因
  • Sublime操作技巧笔记
  • JVM | 基于类加载的一次完全实践
  • Termux实现电脑端远程操作【开启SSH的完整教程】
  • java(Collection类)
  • VS2019编译安装OpenMesh8.0
  • Python爬虫遇到URL错误解决办法大全
  • 基于Vue+ElementUI+Echarts+G2Plot的大屏设计器,代码完全开源
  • Linux - PostgreSQL 适用于9.x 以上的 tar.gz 源码安装与理解 - 报错集锦
  • Django使用用户列表的展示和添加
  • kubernetes错误汇总
  • [openCV]基于拟合中线的智能车巡线方案V4
  • 【网络云盘客户端】——上传文件的功能的实现
  • WebView2对比CefSharp的超强优势
  • 前端需要知道的计算机网络知识
  • [2023杭电多校5 1005] Snake (生成函数)
  • 【MyBtis】各种查询功能
  • H5打包封装小程序系统开发
  • SpringBoot集成jasypt,加密yml配置文件
  • 【C++】模板(初阶)
  • windows下的txt文档,传到ubuntu后,每行后面出现^M,怎么处理?
  • LabVIEW FPGA开发实时滑动摩擦系统