React — Syntax error: Unexpected token, expected ;
26,225
Solution 1
Well, you are getting error because you are defining the function like in a class, not in a function. Use a proper function declaration.
export const ToDoList = (props) => {
const renderItems = () => {
return _.map(this.props.todos, (todo, index) => <ToDoListItem key={index} {...todo} />)
}
return (
<div>
<table>
<ToDoListHeader />
<tbody>
{/* {this.renderItems()} */}
</tbody>
</table>
</div>
);
}
It would work fine, if only ToDoList
was a class, though.
Solution 2
renderItems = () => {
return _.map(this.props.todos, (todo, index) => <ToDoListItem key={index} {...todo} />)
}
Your varian will work with es6 classes.
Author by
Diego Oriani
Updated on May 30, 2020Comments
-
Diego Oriani almost 4 years
For some reason that I can't figure it out I am getting a syntax error in the following React component. The error is in the first
curly bracket
on therenderItem()
. What's wrong?Thank you in advance.
import _ from 'lodash'; import React from 'react'; import { ToDoListHeader } from './todo-list-header'; import { ToDoListItem } from './todo-list-item'; export const ToDoList = (props) => { renderItems() { return _.map(this.props.todos, (todo, index) => <ToDoListItem key={index} {...todo} />) } return ( <div> <table> <ToDoListHeader /> <tbody> {/* {this.renderItems()} */} </tbody> </table> </div> ); }