vue3 el-select 加载内容后 触发事件

在 Vue 3 中使用 Element UI 的 el-select 组件实现加载内容后触发事件,主要有以下两种常见需求及实现方式:

加载数据后触发事件

若需在数据加载完成后触发特定事件(如页面渲染完成),可通过自定义指令监听滚动容器状态:

复制代码
// 注册自定义指令
Vue.directive('loadmore', {
  bind: function(el, binding, vnode) {
    const dropdown = el.querySelector(".el-select-dropdown .el-select-dropdown__wrap");
    dropdown.addEventListener("scroll", function() {
      if (dropdown.scrollTop === 0 && dropdown.scrollHeight - dropdown.clientHeight <= dropdown.scrollTop) {
        // 触发加载事件
        binding.value();
      } 
    });
  }
});

使用时添加指令:

复制代码
<el-select v-model="value" @change="handleChange" v-loadmore="loadData">
  <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
  </el-option>
</el-select>

选择事件触发

若需每次选择后触发事件,直接使用原生 @change 事件即可:

复制代码
<el-select @change="handleChange" v-model="selectedValue">
  <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
  </el-option>
</el-select>

methods: {
  handleChange(value) {
    console.log(value); // 处理选择逻辑
  }
}
相关推荐
烂橘子妙用1 分钟前
用trae整了个记账APP(带AI功能)
前端·react native·程序员
qq_12498707532 分钟前
基于springboot+vue的医疗信息系统(源码+论文+部署+安装)
java·开发语言·vue.js·spring boot·后端·毕业设计
梦想的旅途22 分钟前
JS 注入与 DOM 操作:Web 企业微信 RPA 的交互增强
前端·javascript·企业微信
chenjianzhong3 分钟前
vue-cli4.x + Typescript总结
前端
浪浪山_大橙子4 分钟前
🤖 电脑智能助手:用Trae打造的Electron+大模型自动化工具
前端·javascript
北辰alk4 分钟前
React 的 setState 批量更新机制详解
前端·react.js
qq13267029405 分钟前
后端开发接受Vue项目踩坑记录
前端·javascript·vue.js
北辰alk5 分钟前
为什么你的Vue项目总像一锅粥?高手都在用的目录结构揭秘!
vue.js
jerry_kong6 分钟前
扫码枪卡顿有效解决方案
前端
努力的小郑6 分钟前
MCP 完全指南(上):撕掉标签,看清本质
前端·后端·ai编程