我正在使用酶。我需要测试一个将路由器Link作为子进行反应的组件。我需要以下
我无法使用StaticRouter或MemoryRouter包装我的组件,因为酶只允许在根级别使用setProps()。
我目前的解决方案是使用sinon存根链接渲染方法。这是一个简短的例子。
nums[i] != 0
是否有更好的方法可以避免错误“不变违规:您不应该使用路由器外的链接”?
由于
答案 0 :(得分:1)
不确定这是否对任何人都有帮助,但对于我的情况,我设法绕过浅层渲染顶级组件,然后使用dive()来获取我需要的部分。
loginPage = shallow(<LoginPage />);
...
loginPage.find(LoginForm).dive().find({name:"user"}).simulate("change", userEventMock);