大家好,我有一个问题想问任何可以提供帮助的人。是否有任何辅助函数可以将 document.body 转换为 React 结构并像 getElementBy.. 一样访问它?所以我可以通过 React Names 而不是 classNames 或 TagNames 访问各个组件?
已经实现的代码示例如下所示:
it("something, changes something", () => {
const longFormatWithTimeCalendar = mount(<SingleCalendar {...longFormatWithTimeProps}/>)
longFormatWithTimeCalendar.find("input").first().simulate("click")
const timepickersHourInput = document.body.getElementsByTagName("input")[0]
timepickersHourInput.value = "11"
ReactTestUtils.Simulate.change(timepickersHourInput)
expect(longFormatWithTimeCalendar.find("input").first().props().value).toBe("25 Dec 2017 11:00")
longFormatWithTimeCalendar.unmount()
})
我使用 document.body.getEmentsByTagName 是因为该组件在已安装组件之外呈现。