- 报错
Unexpected token, expected ","
- JSX代码
render() {
const routeInfo = {
'news': [{
name: '国内新闻',
path: 'china',
component: 'China'
}, {
name: '国外新闻',
path: 'world',
component: 'World'
}];
return (
<Router>
<Switch>
<Route path='/login' component={Login} />
<Route path='/' render={() => (
<Container>
<Switch>
<Redirect exact path="/" to="/news" />
{
Object.entries(routeInfo).map(([p,r],index1) => {
return (
<Route key={`${index1}`} render={() => (
<Redirect exact path={`/${p}`} to={`/${p}/${r[0] ? r[0].path : ''}`} />
{
r.map((i, index2) => (
<Route path={`/${p}/${i.path}`} key={`${index1}${index2}`} component={components[i.component]} />
))
}
)}/>
)
})
}
<Route component={NoFound} />
</Switch>
</Container>
)} />
</Switch>
</Router>
)
}
- 我的哪里的语法有问题么?
环境:
"react": "^16.9.0"
"react-router-dom": "^5.0.1"
这段代码有两个错误,
1.如小石头苦海所说,声明
routeInfo
变量时,最后缺少一个}
2.在写
Route
标签的render
属性时,返回的jsx应该是一整个标签,而不能是两个标签