我试图模拟一个div中包含的元素的滚动,这个div是传递给render
函数的。
我正在尝试这样的东西,但似乎div没有滚动,因为我的下一个expect
正在下降。
const content = (
<div style={{display: 'flex'}}>
<LazyList itemRenderer={itemRenderer} items={items} minItemHeight={MIN_ITEM_HEIGHT} />
</div>
);
mockOffsetSize(WIDTH, HEIGHT);
const {debug, container, queryByText} = render(content);
const scrollContainer = container.querySelector('.ReactVirtualized__Grid');
debug(scrollContainer);
fireEvent.scroll(scrollContainer, {y: 100});
debug(scrollContainer);
这是触发scroll事件的正确方法吗?还有其他选择吗?
2条答案
按热度按时间ve7v8dk21#
你有没有试过在你的滚动容器中添加EventBox?我只是不确定你可能刚刚使用的那个库,但我很确定,在正常情况下,调用没有侦听器的scroll fireEvent不会执行任何操作。在
fireEvent
之前,插入如下内容:并将fireEvent更改为:
a1o7rhls2#
scrollY
描述整个文档的滚动位置。使用scrollLeft
表示单个容器。