所以我一直在尝试找出如何为我的组件编写单元测试,该组件使用React Router有条件地渲染组件。我的问题是,无论我做什么,我都无法获得它来渲染根路径以外的任何东西。
要进一步调查此,我放在一起一小块的测试代码,其中我包括这里:
it('testing', () => {
const component = mount(
<MemoryRouter initalEntries={ [ '/next' ] }>
<Switch>
<Route path="/next" render={ () => <p>Next</p> } />
<Route path="/" exact render={ () => <p>Root</p> } />
</Switch>
</MemoryRouter>
);
console.log(component.debug());
});
因此,我的期望是该代码将呈现<p>Next</p>
,因为我正在/ next路由。然而,这将只呈现<p>Root</p>
。
如果有人可以帮助我了解我在这里做错了,那将是非常赞赏。谢谢。
答案 0 :(得分:1)
因此,事实证明我拼写了“ initialEntries”,并且这是整个问题。谢谢。