blog. js выполнение начинается с этого, если мы нажимаем ссылку на сообщения
class Blog extends Component {
render () {
return (
<div className="Blog">
<ul>
<li><Link
to="/posts" exact>Posts</Link></li>
<li><Link to="/new-post">New Post</Link></li>
</ul>
<Switch>
<Route path="/new-post" render={()=>(<Newpost/>)}/>
<Route path="/posts" component={Posts}/>
<Route path="/" exact component={Posts}/>
<Route render={()=><h1>Not Found</h1>}/>
</Switch>
</div>
);
}
}
posts. js отображается при вызове ссылки на сообщения в блоге. js
class Posts extends Component {
componentDidMount(){
console.log("render");
});
}
postselect =(id)=>
{
this.props.history.push('/new-post');
console.log("hello");
console.log("hello");
console.log("hello");
console.log("hello");
this.props.history.push('/posts');
}
render()
{
console.log("posts render");
return(
<div>
<button onClick={this.postselect}>submit</button>
</div>);
}
}
newposts. js (должен отображаться, если мы назовем этот маршрут)
class NewPost extends Component {
componentDidMount(){
console.log("hellonewpost");
}
render () {
console.log("newpost render);
return (
<div className="NewPost">
</div>
);
}
}
Я вызываю history.pu sh в сообщениях. js дважды. но new-post не рендерится, как журналы консоли, указанные в newpost. js componentdidmount и метод render не выполняются. он непосредственно выполняет консольный журнал в сообщениях. js ... почему ????
кто-нибудь может это объяснить .... например, как код выполняет