我正在构建一个简单的ReactJS页面(我的第一个),并且我遇到了路由问题。浏览器栏上的链接进行更新(在控制台没有错误),但网页不刷新:ReactJS - 路由更新链接,但不刷新页面
我App.js
是:
return(
<div id="container">
<Dashboard>{this.props.children}</Dashboard>
</div>
);
仪表板是在动态内容在中间
呈现的主页return(
<!-- code for navbar, sidebar etc -->
...
<Link to="/memory">Memory</Link>
....
<div id="page-wrapper" className="page-wrapper">
{this.props.children}
</div>
);
所以我创建了两个小部件(Home
是在开始时显示和Memory
)
主页:
render() {
return(
<div className="row">
HOMEPAGE
</div>
);
}
内存:
render() {
return(
<div className="row">
MEMORY
</div>
);
}
路由器是非常简单的:
<Route component={App}>
<Route path='/' component={Home}>
<Route path='/memory' component={Memory} />
</Route>
</Route>
当我去到我的家庭服务器(本地主机:3000)我HOMEPAGE显示,但当我点击Memory
链接什么都没有发生......网址更改但Memory
组件未呈现...
UPDATE
感谢的答复我有,这是一个工作版本:
板 - >删除
App.js
通过这种方式将导航只包含相对于导航的部分(顶部栏和左侧栏)。
路径已改变:
<Route>
<Route path='/' component={App}>
<Route path='/memory' component={Memory} />
</Route>
</Route>
现在,当我去家里(本地主机:3000),变量this.props.children
是不确定的,我呈现在主页组件(感谢{this.props.children || <Home />}
)。
在所有其他情况下,我呈现由Link
如果在路由器内存路由中删除'/'会怎么样?所以那行应该是' ' –