Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Objects are not valid as a React child react error?

could you please tell me why I am getting this error:

Objects are not valid as a React child (found: object with keys {seo_val, text_val}). If you meant to render a collection of children, use an array instead.

I am trying to hit http request and try to make dropdown .

import React from "react";

class DropDown extends React.Component {
  constructor(props) {
    super(props);
    console.log(this.props);
  }

  render() {
    const makeDropDown = () => {
      console.log(this.data);
      return this.props.data.map(x => {
        return <option>{x}</option>;
      });
    };
    return (
      <div>
        <div>
          <select>{makeDropDown()}</select>;
        </div>
      </div>
    );
  }
}

export default DropDown;

Sandbox.

like image 985
naveen Avatar asked May 18 '26 03:05

naveen


1 Answers

Full error message:

Objects are not valid as a React child (found: object with keys {seo_val, text_val}).

Error is very clear, you are trying to render an object in jsx that contains two keys:

seo_val: "..."
text_val: "..."

Write it like this, (render the value that you want):

return <option key={x.seo_val}>{x.text_val}</option>;

Working sandbox.

like image 157
Mayank Shukla Avatar answered May 19 '26 17:05

Mayank Shukla