排毒Flatlist不滚动

时间:2018-03-16 23:39:08

标签: react-native detox

我有一个类似的导航器结构:

stack drawer stack tab

我的层次结构是:

view
 view
  flatlist

我正试图让我的平面列表向下滚动。您可以看到手指动画,但列表没有移动。你可以在这个gif中看到它:

Screen Recording 2018-03-16 at 11.30 p.m..gif

这是我的代码:

it('should have infinite scrolling', async () => {
  await expect(element(by.id('NewsFeed.Scroller'))).toBeVisible();
  await expect(element(by.id('NewsFeedScreen.ArticleListing-0'))).toExist();
  await expect(element(by.id('NewsFeedScreen.ArticleListing-10'))).toNotExist();
  await element(by.id('NewsFeed.Scroller')).scroll(10000, 'down');
  await expect(element(by.id('NewsFeedScreen.ArticleListing-10'))).toExist();
});

我认为问题是滚动操作从屏幕底部开始。当我尝试在那里开始滚动表单时,它也不起作用。我没有在API中看到任何内容,允许我在手势开始的位置放置偏移量。在检查中查看该元素表明它不在Detox开始其手势的区域中:https://d3vv6lp55qjaqc.cloudfront.net/items/323C3D3U3y1Y2Z1B2L2J/Screen%20Shot%202018-03-16%20at%2023.47.48.png?X-CloudApp-Visitor-Id=2852073&v=31521c3c

2 个答案:

答案 0 :(得分:5)

我等待https://github.com/wix/detox/issues/589等待解决后,我找到了一个足够好的解决方案。

await element(by.id('NewsFeedScreen.ArticleListing-0')).swipe('up', 'fast', 0.9);

https://github.com/wix/detox/blob/master/docs/APIRef.ActionsOnElement.md#swipedirection-speed-percentage

我正在寻找的行为,在我的列表中向下滚动

答案 1 :(得分:0)

如果现在有人遇到这个问题 - 尝试使用 startPositionX 方法的 startPositionY.scroll() 参数,例如:

await element(by.id('scrollView')).scroll(200, 'down', NaN, 0.5)

当我遇到同样的问题时,对我来说就像一个魅力。

https://github.com/wix/Detox/blob/master/docs/APIRef.ActionsOnElement.md#scrolloffset-direction-startpositionx-startpositiony