- 当前 Bug 的表现(可附上截图)
<view class="section"> <scroll-view scroll-y style="height: 200px;" bindscrolltoupper="upper" bindscrolltolower="lower" bindscroll="scroll" scroll-into-view="{{toView}}" scroll-top="{{scrollTop}}">
<view id="green" class="scroll-view-item bc_green"></view>
<view id="red" class="scroll-view-item bc_red"></view>
<view id="yellow" class="scroll-view-item bc_yellow"></view>
<view id="blue" class="scroll-view-item bc_blue"></view>
</scroll-view>
</view>
官方例子,这里使用scroll-into-view 无效,没有反应,永远都是在最顶端
安卓手机,乐视微信版本6.6.7不扫开发者工具真机调试,电脑上没反应。
- 预期表现
- 复现路径
- 提供一个最简复现 Demo
我是在最下面加了个空盒子 id=bottom 然后永远定在最下面。
我也是,没效果,不过我用的是mpvue,但是原理应该是一样的
<
scroll-view
scroll-y
class
=
"scroll-view"
:scroll-into-view
=
"scrollIndex"
@
scroll
=
"onScroll"
>
<
div
v-for
=
"(item, index) in availableTimeList"
:key
=
"index"
:id
=
"itemID(index)"
@
click
=
"onSelectPickupTime(item)"
>
<
booking-time-header
v-if
=
"item.title !== undefined"
:title
=
"item.title"
/>
<
booking-time-item
v-else
:item
=
"item"
/>
</
div
>
</
scroll-view
>
你这个跟我的一样,我知道是什么问题。是动态获取的数据,页面还没有就渲染了,所以scroll的高度一直是0
你吧你的scrollIndex 的结果放在availableTimeList 数据200 回调的时候给他赋值就可以了
还是不行,我availableTimeList 已经有值了也还是这样子, 不起任何效果
我这里大概定位到问题,不知道是不是mpvue的问题,我这样子写可能id没法赋值到控件上面,导致scroll-to-view找不到对应的 item id
已经解决了,确定是mpvue绑定的bug, 原因是绑定调用了itemID(index)这个函数返回不同item的id值,但是这种写法是不支持的,虽然函数都有执行,但是可能设置的时机不正确,所以导致scroll-to-view没法索引到
我使用的mpvue也遇到了这个问题。初始id跟scroll-into-view也能对上,可就是不滑动是什么原因导致的啊
多复制几个view,高度还不够滚动吧