vue项目使用iview☞Modal后页面不能滚动的诡异问题

部分版本(360、谷歌)浏览器,页面不能正常滚动,但是我自己的怎么就好好的,

本着有问题一定解决原则,找到问题机器,查找原因,发现个诡异的东西,浏览器竟然自动在body上加了一个"overflow:hidden"

妹的,覆盖掉,在body中加上overflow:auto,完美解决

未完

查本究源,为什么会加个"overflow:auto"属性哪?发现是使用了iview的modal组件。该组件有个默认属性scrollable为false(页面是否可以滚动),当打开modal时候,会在body中添加"overflow:hidden"属性,来禁止页面滚动,在modal关闭时候,"overflow:hidden"会被删掉。

这一切看着没什么问题呀,但是我使用的时候就出现问题了哪?

我是将modal封装为一个子组件,使用vuex控制modal的显示与隐藏,在打开组件的时候,正常,body中添加了"overflow:hidden",但是在关闭的时候,"overflow:hidden"并没有被删除掉,一直存在body中,随后影响其他页面的正常滚动。

题外话--使用ElementUI的"dialog"时候,有"before-close"等方法可以操作vuex状态之类的东东,感觉iview的modal扩展性不强。

暂时的解决方法是,先将scrollable设为true。

相关推荐
答案answer几秒前
Vue3项目集成monaco-editor实现浏览器IDE代码编辑功能
前端·vue.js
爱上妖精的尾巴5 分钟前
6-1WPS JS宏 new Set集合的创建
前端·后端·restful·wps·js宏·jsa
绝世唐门三哥6 分钟前
Vue 自定义指令完全指南(含 Vue2/Vue3 对比 + 完整 Demo)
前端·javascript·vue.js
uhakadotcom8 分钟前
Tomli 全面教程:常用 API 串联与实战指南
前端·面试·github
Asurplus14 分钟前
【VUE】15、安装包管理工具yarn
前端·vue.js·npm·node.js·yarn
liangshanbo121516 分钟前
Mac M3 安装 Antigravity Agent “已损坏“ 问题解决方案
前端·macos·antigravity
sszdlbw16 分钟前
前后端在服务器的部署
运维·服务器·前端·后端
马卫斌 前端工程师19 分钟前
vue 多个请求要同时拉取数据,写一个方法
前端·javascript·vue.js
苏打水com20 分钟前
第十篇:Day28-30 工程化优化与部署——从“能跑”到“好用”(对标职场“项目上线”需求)
前端·css·vue·html·js
写代码的皮筏艇21 分钟前
react hooks中的useState
前端·javascript