In React < v16.0 the render method can only render a single root node. (update: this is changed in v16, see below). In your case, you're returning 3 nodes. To get around this you can wrap your 3 nodes in a single root node:
render: function(){
return (
)}
In React v16 it's possible for render() to return an array of elements.
Like with other arrays, you’ll need to add a key to each element to avoid the key warning:
render() {
return [
,
,
,
];
}
Another option is to use a Fragment. Fragments let you group a list of children without adding extra nodes to the DOM.
render() {
return (
);
}
There is also a short syntax (<>) for declaring fragments:
render() {
return (
<>
>
);
}