使用el-dropdown 下拉菜单时移入或点击元素都不显示对应下拉内容,并报错 this.triggerElm.setAttribute is not a function

本文讲述了在项目中使用Element-UI的el-dropdown组件时,打包后移入元素失效并报错的问题。通过源码分析,发现关键在于组件加载顺序,解决方法是确保移入组件在下拉显示组件之前。错误与正确顺序对比及修复步骤详述。
摘要由CSDN通过智能技术生成

问题:

在组件中使用了element-ui的下拉菜单组件el-dropdown,运行时都没问题,但是打包后其他文件再引入使用该组件时,移入el-dropdown触发元素无法显示下拉菜单,并且会报如下错误:
index.js:1 Uncaught TypeError: this.triggerElm.setAttribute is not a function at a.removeTabindex (index.js:1:129067) at a.hide (index.js:1:127963)
在这里插入图片描述

解决过程(可以直接跳过到解决方法):

查看el-dropdown组件源码,如果没有单独设置移入元素,则使用第一个不具名插槽元素作为触发元素,当前报错为触发元素调用方法调用报错,考虑是否是触发元素获取错误。
在这里插入图片描述

解决方法:

检查移入的组件和下拉显示的组件先后顺序,移入的组件必须在下拉显示的组件前面
错误顺序:
在这里插入图片描述
正确顺序:
在这里插入图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值