1. 程式人生 > >React-route-exact屬性

React-route-exact屬性

React-Route-exact屬性

1.一般情況下react中Route匹配會匹配所有path中含有匹配條件(to屬性值)的路由。此處匹配條件一般指的是Link標籤中的to屬性或Redirect標籤中的to屬性值。
如下情況:

<Route path='/'  component={Home} />
<Route path='/index' component={Index} />

當有個Link標籤為

<Link  to='/'  />

此時因為path=’/index’中含有 匹配條件 ‘/’所以也會被渲染,所以此時會同時渲染Home和Index元件。這樣就會對我們的專案造成一定的影響,此時就可以使用exact屬性來解決這個問題。

2.exact 為Route中的一個屬性,屬性值為boolean值,當為true時,表示此路由為嚴格匹配,為false時為正常匹配(上述情況)。嚴格匹配的話,就必須path屬性與條件(to屬性)必須完全相同,才會渲染。
所以解決上述問題直接:

<Route  path='/'  exact    component={Home} />
<>Route  path='/index'  component={Index} />

即可。