最近在开发一个通讯系统的时候发现了一个Taro的ScrollView上存在的bug。关于ScrollView组件在同级节点被改变的时候,滚动条会重新回到顶部的问题。
排查后确定是组件被重新创建了。但是尽管加了key。组件依然会被重新创建。但是把ScrollView换成View加上overflow:"scroll"模拟同样的问题,嘿。就没事。

先说解决方案:在被更改的节点外层加上Block标签即可解决问题。
当然其他元素可以,比如View,反正不要让ScrollView的同级节点更新就行。
bug模拟(注意ScrollView视图)

bug代码

修改后的代码

修改后的demo模拟

