我正在使用React Router v5,并且想检查我的路由以确保它们有效,因为大概显示无效链接时我的404页面未触发,因为即使没有项目可显示,该路由仍然匹配该路线无效。例如example.com/cat1/product1
有效,而example.com/cat1/produc1
无效。
对于类别example.com/cat1
有效和example.com/ca1
无效,相同。
当前,它仅显示无效链接的内容,而不是我的NotFound
组件。
如何检查每个链接是否有效以及是否不显示我的NotFound
组件?
<Switch>
<Route exact path="/">
<Home categories={categories} products={products} />
</Route>
<Route exact path="/product-categories">
<Products categories={categories} />
</Route>
<Route exact path="/delivery">
<Delivery categories={categories} />
</Route>
<Route exact path="/terms">
<Terms categories={categories} />
</Route>
<Route exact path="/privacy">
<Privacy categories={categories} />
</Route>
<Route exact path="/returns">
<Returns categories={categories} />
</Route>
<Route exact path="/about">
<About categories={categories} />
</Route>
<Route path="/sitemap.xml" onEnter={reload}/>
<Route path="/robots.txt" onEnter={reload}/>
<Route exact path="/:catSlug">
<ProductsList categories={categories} products={products} userCountry={userCountry}/>
</Route>
<Route exact path="/:catSlug/:productSlug">
<Product alertIsVisble={() => dispatch(allActions.showAlert())} categories={categories} products={products} userCountry={userCountry} />
</Route>
<Route>
<NotFound categories={categories} />
</Route>
</Switch>