找了好久找不到解决办法,给自己记一下
目标:出现在目标元素左侧
出现情况:出现在了页面左上方
产生原因:
导入文件,文件导入后跟后端要上传失败的条数,封装了一个组件,只要有数字大于0,elpopover立马出现,但是向后端发起请求在导入成功十秒后,在这十秒内切换界面,请求完成后再回来当前页面就发现了popover跑左上角了
审核元素的时候发现是这样的:
style="width: 200px; position: fixed; top: -3px; left: 0px; transform-origin: left center; z-index: 2015;"
猜测应该是el-popover在切换界面的时候找不到定位了
一开始想在页面deactivated中获取elpopover然后display设置为none的,但是离开页面的时候元素都没加载出来,根本没法获取到
想着是elpopover定位不到位置了所以就从elpopover下手,重新加载一下Popper
最终解决办法:
// el-popover上加一个ref方便拿到元素
ref="failiPopover"
// elpopover定位不到位置了就从elpopover下手
// 元素出现的时候重新加载一下Popper
activated() {
this.$refs.failiPopover.updatePopper()
},