-1
Что вызывает эта ошибка?Ошибка двойных фигурных скобок с помощью ReactDOM
Syntax error: Unexpected token, expected ,
{ Object.keys(form_routes).map((key,index) => <Route path={key} component={{ form_routes[key] }}></Route>) }
на {{ form_routes[key] }}
полный соответствующий код:
const form_routes = {
'start': "Start",
'part1': "Part1",
'part2': "Part2",
'part3': "Part3",
'part4': "Part4",
'part5': "Part5",
'part6': "Part6"
}
ReactDOM.render(
<Provider store={store}>
<Router history={hashHistory} render={applyMiddleware(useRelativeLinks())}>
<Route path="/" component={App}>
<IndexRedirect to='/search'/>
<Route path='main' component={MainMenu}/>
<Route path='search' component={Search}/>
<Route path='form' component={Form}>
<IndexRedirect to='start'/>
{ Object.keys(form_routes).map((key,index) => <Route path={key} component={{ form_routes[key] }}></Route>) }
</Route>
</Route>
</Router>
</Provider>,
root
);
Works, если обычная:
<Route path='start' component={Start}></Route>
<Route path='part1' component={Part1}></Route>
<Route path='part2' component={Part2}></Route>
<Route path='part3' component={Part3}></Route>
<Route path='part4' component={Part4}></Route>
<Route path='part5' component={Part5}></Route>
<Route path='part6' component={Part6}></Route>
, когда это просто 'component = {form_routes [key]}' он не отображает мои компоненты. Я думаю, это потому, что он равен 'component =" Start ". Который не работает, поскольку другой шаблон маршрута: 'component = {Start}' –
@ A.Lau: Конечно, это не так, 'form_routes' содержит строки. '{" Пуск "}'! = '{Пуск}'. Вам нужно будет поместить эквивалентное значение в 'form_routes' (' Start', а не '' Start ''), а затем' {form_routes [key]} 'будет работать. –
Спасибо. Это было глупо с моей стороны. Кудрявые скобки немного смутили меня. –