Javascript 如果子路由已连接组件,如何使用BrowserRouter?
我是一个反应迟钝的新手。我按照教程创建了一个注册表单。但它已经过时了。我试图重定向到注册,登录和主页点击链接使用浏览器重定向。教程中定义的路线如下Javascript 如果子路由已连接组件,如何使用BrowserRouter?,javascript,reactjs,react-router,Javascript,Reactjs,React Router,我是一个反应迟钝的新手。我按照教程创建了一个注册表单。但它已经过时了。我试图重定向到注册,登录和主页点击链接使用浏览器重定向。教程中定义的路线如下 const routes = { component: Base, childRoutes: [ { path: '/', component: HomePage }, { path: '/login', component: LoginPage },
const routes = {
component: Base,
childRoutes: [
{
path: '/',
component: HomePage
},
{
path: '/login',
component: LoginPage
},
{
path: '/signup',
component: SignUpPage
}
]
};
基本组件使用链接定义导航栏。然后将该路由导入索引页,并与浏览器历史一起使用,根据React Router v4,浏览器历史已过时。我想使用浏览器路由器,但我不知道如何提供附加组件的子路由
我尝试了以下方法
Index.jsx
import { BrowserRouter as Router,Route } from 'react-router-dom';
ReactDOM.render((
<MuiThemeProvider muiTheme={getMuiTheme()}>
<Router>{routes}</Router>
</MuiThemeProvider>),
document.getElementById('root')
);
从'react Router dom'导入{BrowserRouter as Router,Route};
ReactDOM.render((
{routes}
),
document.getElementById('root'))
);
Routes.jsx
const routes = <Route component = {Base}>
<Switch>
<Route path="/" component={HomePage}/>
<Route path ="/login" component = {LoginPage}/>
<Route path ="/signup" component = {SignUpPage}/>
</Switch>
</Route>;
const路由=
;
但我从一开始就知道,这是行不通的,正如预期的那样,它会抛出一个错误<代码>您不应在同一路线中使用和;将被忽略且失败的道具类型:道具
子在
Base中按要求标记,但其值未定义。这一点我很明显,因为我没有像早期版本那样提到任何关于儿童路线的内容。我也试着研究这个问题,但可以找到在何处将组件插入路由
任何帮助都将不胜感激。如果这个问题已经被问到,我很抱歉,但是我找不到很多关于react router 4的教程或适当的文档可以帮助我。我认为你应该删除
并使用
来代替我不理解你的问题。您正在渲染没有子级的Base
,并且在RRv4中不应该有嵌套路由。是否要生成用于响应的路由dynamicallyThanks@梅卢内克的回答正是我想要的