@testing-library/react click 事件不会冒泡到父元素

@testing-library/react click event does not bubble to parent elements

提问人:Dimitar Nizamov 提问时间:5/31/2023 最后编辑:Lin DuDimitar Nizamov 更新时间:5/31/2023 访问量:141

问:

我在测试中使用了以下代码,该代码正在获取具有文本“Name”的 DataTable 的标头并单击该元素。但是,由于某种原因,事件不会冒泡到按钮元素,并且不会触发单击。如果我明确声明我想要父元素,那么它确实会触发。该属性似乎不起作用。有什么想法吗?react-testing-librarybuttonbubbles

不起作用:

render(<DataTableV2 columns={columns} data={data} />);
const body = await screen.getByTestId('datatable.body');
const head = await screen.getByTestId('datatable.head');
const nameHeaderBtn = await within(head).getByText('Name');
fireEvent.click(nameHeaderBtn, { bubbles: true });

工程:

const nameHeaderBtn = await within(head).getByText('Name').parentElement.parentElement;
fireEvent.click(nameHeaderBtn, { bubbles: true });

呈现的 HTML:

<button class="inner">
  <div class="css-1qnchzl-truncate">
    <div tabindex="-1">Name</div>
  </div>
</button>
ReactJS 测试 onclick react-testing-library event-bubbling

评论

0赞 Lin Du 5/31/2023
你能提供 stackoverflow.com/help/minimal-reproducible-example 吗?不要使用组件,只需做一个简单的演示来重现这个问题。DataTableV2

答: 暂无答案