我遇到一个全局样式造成的bug

214 阅读1分钟

现象是,我在a界面有一个输入框,当我去b页面逛一圈后再跳回来

我的输入框样式就变了

但是我一刷新,样式变回来了

我一开始的做法是

既然,刷新一下,样式就变回来了,那么我就写一个方法,当输入框样式与我写的不一样时,我就location.reload(),然后放在mounted里面,这样第一次进入界面时,就自动刷新

问题暂时解决了,项目经理没检查出漏洞。但是我知道这是一个隐患,如果对方电脑分辨率比较特殊,那可能引发无限刷新,到时候,维护人员挠破头,估计都找不到这行代码 于是,我有思考,其他方法

我之后的做法是

看能不能只刷新一次

我研究几个小时,好吧,找不到

我再之后的做法是

找其他项目组的前端问问,他说应该是全局与局部样式的问题,于是折腾了一下,没搞定 但是我觉得应该的确是全局样式把局部覆盖了

我再之后的做法是

问问,QQ群的一些人,有一个小伙子跟我说,全局样式的话,起个不一样类名。 那时,我厚积薄发,悟了捂了。因为a界面的输入框我是直接复制的b界面的,然后在此基础上再进行修改,于是,我把最外层的类名改了改,搞定

所以,以后写样式,应该加个scoped 免得出现样式干扰问题,后面的人一脸懵逼