我在React Web应用程序中使用了create-react-app入门套件。
//Route.js
<Route path='/dashboard' component={Dashboardpage}>
<Route path='editprofile' component={Editprofile} />
<Route path='changepassword' component={changepassword} />
</Route>
//Dashboardpage.js
render()
{
return(
............
............
<div className="center-block">
<h4 className="text-center margin-top-10"><Link to="/dashboard
/editprofile">Edit Profile</Link></h4>
</div>
<div className="center-block">
<h4 className="text-center margin-top-10"><Link to="/dashboard
/changepassword">Change Password</Link></h4>
</div>
{this.props.children}
............
............
)
}
在加载仪表板时,Dashboardpage会呈现一些静态内容,并带有两个链接编辑配置文件和更改密码。但是点击编辑配置文件后,路径/仪表板/ editprofile会被调用,但是Dashboardpage,即父组件再次使用子组件呈现,即editprofile,因此会出现闪烁。
即使该组件没有变化,父组件即editprofile也会重新渲染。请帮助我避免在没有发生变化时避免闪烁或避免重新渲染父组件。