对于this.$confirm 通过customClass传一个z-index样式名 是控制的 确认弹窗里内容dom的层级,如果需要设置整个确认弹窗的z-index,可以通过zIndex传入【element-ui文档里没有查到,但是在源码里找到了一个zIndex prop】。
在抽屉弹窗<el-drawer>上要弹出弹窗<el-dialog>,弹窗里面还有<el-popover>,抽屉弹窗js里还有this.$confirm(),弹窗层级顺序全部要正确,可以通过组合传class、customClass、zIndex来保障第一次打开抽屉后的所有弹出层的层级顺序是正确的,但是element-ui组件里的弹出层用到了node_modules\element-ui\lib\utils\popup\popup-manager.js,而该文件对应的导出对象PopupManager内部维护了一个zIndex属性,这个zIndex属性会不断累加,因此给一些弹窗组件设置了 z-index:9000 !important;这样的样式后,第一次打开抽屉弹窗及里面的所有弹窗时,element-ui生成的遮罩层dom【同时打开的所有element-ui弹窗公用同一个遮罩层dom,可在浏览器控制台的查看元素界面里的”</body>“前看到一个”<div class="v-modal" style="z-index: 2002;" tabindex="0"></div>“这样的dom节点】的z-index值比较低【例如2002】,但会在新打开的弹窗的z-index基础上不断累加【
node_modules\element-ui\lib\utils\popup\popup-manager.js里有如下方法:
nextZIndex: function nextZIndex(