自定义一个指令解决部分组件没有scopeid的问题
Vue.directive('scoped', function(element, binding) {
const scopedId = binding.value.$options._scopeId
if (!scopedId) {
return
}
const componentTag = element.__vue__.$vnode.tag
let target = [ ] // 需要添加scopedId的元素
if (componentTag.indexOf('ElPopover') !== -1) {
// popover组件
target.push(element.children[0])
} else {
target.push(element)
}
target.forEach(item => { item.setAttribute(scopedId, '') })
})e最后更新于