我有一個Firebase登錄系統,如果有人輸入正確的信息,我想動態添加路線,我希望它添加主路線和添加路線。如何在React.JS中有條件添加路線?
var userToken = 'firebase:authUser:AIzaSyDfC9LqfL1rbClhfCOD04BKC9ZIn7UAZ_g:[DEFAULT]';
ReactDOM.render(
<Router history={hashHistory}>
<Route path="/" component={Login} />
<Route path="signup" component={Signup} />
{ localStorage.getItem(userToken) ? (
<Route path="main" component={Main} />
) : (<Redirect from="main" to="/" />)
}
{ localStorage.getItem(userToken) ? (
<Route path="add" component={Add} />
) : null
}
<Route path="main" component={Main} />
<Route path="*" component={NotFound} />
</Router>
, document.getElementById('container'));
上面的代碼工作正常,但它也有缺陷,當有人類型的正確的信息,他們必須重新加載頁面,然後再次輸入信息進行登錄。
有沒有解決任何方式在成功認證後他們不必重新加載頁面?
所以不要出於安全原因,但是對於實用性的原因這樣做: - ) –
指向你的「免責聲明」,雖然我們可以繞過這個認證,但是當使用組件來添加一些東西時,我認爲必須在服務器端驗證用戶的真實性。 – MoolsBytheway
當然,但除非服務器是重新路由的那個,那麼它仍然是不安全的 – ZekeDroid