I'm new working with react v4 and I try to redirect to another page, something like a home page after the user authenticate in but I'm getting problems with nested routes, I've tried this solution and this in documentation but doesn't work the way that I need.
This is my index.js
ReactDOM.render((
<Provider store={store}>
<Router history={history}>
<Route path="/" component={Login}>
<MuiThemeProvider>
<div>
<div>
<SearchBar/>
<MainMenu/>
</div>
<Switch>
<Route path="/home" component={HomeAllSubjects}/>
<Route path="/calendar" component={UnderConstruction}/>
<Route path="/myPlan" component={UnderConstruction}/>
<Route path="/myWorks" component={MyWorks}/>
<Route path="/indicators" component={UnderConstruction}/>
<Route path="/myGroups" component={GroupsContacts}/>
<Route path="/eduteca" component={UnderConstruction}/>
<Route path="/notifications" component={HomeGroups}/>
<Route path="/miSer" component={UnderConstruction}/>
<Route path="/help" component={MyGroupsDescription}/>
<Route path="/topic" component={HomeSubject}/>
<Route path="/areaInfo" component={HomeUnit}/>
<Route path="/comments" component={CommentsList}/>
</Switch>
<Footer/>
</div>
</MuiThemeProvider>
</Route>
</Router>
</Provider>
), document.getElementById('content'));
And this is my Login.js render method
render()
{
debugger;
if (this.props.redirecter)
{
history.push('/home');
}
return (
<div>
<HeaderLogin/>
<div style={{ marginLeft: '300px', padding: '100px'}}>
<div className="container">
<div className="row">
<div className="col-md-offset-5 col-md-3">
<form style={styles.formlogin} onSubmit={this.handleClick}>
{this.props.errorMessage ? <h5>{this.props.errorMessage}</h5> : null}
<input style={styles.formcontrol} type="text" className="form-control input-sm chat-input" placeholder='Usuario' onChange={this.onUserChange}/><br/>
{this.state.userMessage ? <span style={styles.mess}>{this.state.userMessage}</span> : null}
<br/>
<input style={styles.formcontrol} type="password" className="form-control input-sm chat-input" placeholder='Clave' onChange={this.onPasswordChange}/><br/>
{this.state.passMessage ? <span style={styles.mess}>{this.state.passMessage}</span> : null}
<br/>
<div style={styles.wrapper}>
<span className="group-btn">
<button type="submit" className="btn btn-primary btn-md" value="Submit" >Login</button>
</span>
</div>
</form>
</div>
</div>
</div>
</div>
<Footer/>
</div>
);
}
}
NOTE: when I put the Login route into the Swictch is working but when a put it outside appear this:
Thanks in advence of your help.