Element: 发现loading的一个新bug

Created on 14 Oct 2016  ·  6Comments  ·  Source: ElemeFE/element

假如你在a页面放了loading做登录功能,完成后跳转到b页面,b页面本身无 loading且页面较长本来是应该有滚动条的,这个时候滚动条也不会显示(之前b页面我放过loading后来发现这个问题就把loading去掉了,然后发现还是这样,追根溯源去掉所有的loading,发现好了)

Most helpful comment

@Leopoldthecoder @perfectyang
loading的部分代码应该要加一部分判断。

update: function update(el, binding) {
            if(binding.oldValue !== binding.value){ //原来的代码里没有判断
                toggleLoading(el, binding);
            }
        },

否则在页面模板不断更新且同时showLoading时(binding.value===true),会把之前overflow:hidden的部分style赋值给originalOverflow,那么最终hideLoading的时候overflow:hidden会被保留

All 6 comments

那是因为,loading过的页面,js在body加了一个属性overflow:hidden

@wilsonhxd1986 在跳转到 b 页面之前是否已将 a 页面的 loading 关闭?

跳转前我已经关闭了loading

那请提供一个在线 Demo 吧

@Leopoldthecoder @perfectyang
loading的部分代码应该要加一部分判断。

update: function update(el, binding) {
            if(binding.oldValue !== binding.value){ //原来的代码里没有判断
                toggleLoading(el, binding);
            }
        },

否则在页面模板不断更新且同时showLoading时(binding.value===true),会把之前overflow:hidden的部分style赋值给originalOverflow,那么最终hideLoading的时候overflow:hidden会被保留

fixed in #469

Was this page helpful?
0 / 5 - 0 ratings