weex中的Refresh组件:偶尔初次进入页面下拉刷新会跳动一大段距离?

问题描述

图片描述图片描述

clipboard.png

如上三张图所示,

  • 第一张是【还未刷新】的效果,即初始界面;
  • 第二张是【正常刷新】效果,白色区域随着手指下拉而显示,这里设置了margin值,小球是从navbar下来的。
  • 第三张图是【非正常跳动】效果,即初次进入界面时准备下拉刷新,但并未出现第二张的效果,而是猛然跳动一大块距离!令人费解!

自己尝试过哪些方法

起初笔者以为是因为自己设置的margin、padding值对其的影响,但是发现去掉之后仍存在这张异常效果,而且在官方例子上加上margin、padding值显示仍旧是正常的,故排除这张可能。

曾搜索有人称之现象为“抖动”,归其原因为“渲染位置尚未结束“所致,故建议限制界面组件的宽高,这确实是个新的思路,但笔者界面中有的块div宽高动态决定的,且并不起作用。

希望各位猿猿们能提供相关解决问题思路,跪求!

相关代码

index.vue


<scroller show-scrollbar="false" >
             <refresh class="refresh" @refresh="onrefresh" :display="refreshing ? 'show' : 'hide'">
               <loading-indicator class="indicator"></loading-indicator>
            </refresh>
            <div class="block">
            ......
            <div class="color-block">
            </scroller>

index.css



.refresh {
    background: linear-gradient(to right, #CCB3AA , #E5D1BB);
    // padding-top: 44px;
    height: 69px;
    display: flex;
    align-items: center;
    &-indicator {
        margin-top: 44px;
        height: 25px;
        width: 25px;
        color: #CCB3AA;
    }
  }

.color-block{
    padding-top: 44px,;
    }
    
阅读 3k
1 个回答
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进