//在main.js添加
Vue.directive('siem-dropdown', function (el, binding, vNode) {
let ul = el.querySelector("ul")
let uid = vNode.componentInstance._uid; // 获取下拉菜单实例的 uid
let siemDropdownClass = `siem-dropdown-${uid}`;
ul.classList.add(siemDropdownClass);
if (el) {
setTimeout(() => {
const $dom = document.querySelectorAll(`.${siemDropdownClass}`)[0]; // 获取下拉菜单项浮层元素
if (el?.offsetWidth) {
$dom.style.minWidth = el.offsetWidth + 'px'; // 设置最小宽度为下拉菜单内容宽度
}
}, 100);
}
})
标签:el,uid,自定义,dropdown,宽度,let,下拉菜单
From: https://www.cnblogs.com/LiZiheng/p/17746696.html