0

I Create a component and it doesn't render (react js) < --- completely newbie react js user

first i create well structure of a card in list meetupitems.js

import { Action } from 'history';
import css from './Meetupitems.module.css';

function Meetupitem(props) {
  <li className={css.item}>
    <div className={css.image}>
      <image src={props.image} alt={props.title} />
    </div>
    <div className={css.content}>
      <h3>{props.title}</h3>
      <address>{props.address}</address>
      <p>{props.description}</p>
    </div>
    <div className={css.actions}>
      <button></button>
    </div>
  </li>;
}

export default Meetupitem;

then use map() to create card list from "list of data"

Meetuplist.js

import Meetupitem from "./Meetupitems";
import css from "./Meetuplist.module.css";

function Meetuplist(props) {
  return (
    <ul className={css.list}>
      {props.meetups.map((meetup) => (
        <Meetupitem
          key={meetup.id}
          title={meetup.title}
          image={meetup.image}
          address={meetup.address}
          description={meetup.description}
        />
      ))}
    </ul>
  );
}

export default Meetuplist;

and when i'm trying to use it Allmeetup.js

import Meetupitem from "./Meetupitems";
import css from "./Meetuplist.module.css";

function Meetuplist(props) {
  return (
    <ul className={css.list}>
      {props.meetups.map((meetup) => (
        <Meetupitem
          key={meetup.id}
          title={meetup.title}
          image={meetup.image}
          address={meetup.address}
          description={meetup.description}
        />
      ))}
    </ul>
  );
}

export default Meetuplist;

the result I saw was a blank page at the index route(where the list should show) but others route was fine I can't figure out what's wrong

1 Answer 1

1

I think the issue is nothing is being returned from your Meetupitem component. There is no return statement in it. I believe if you look in console in chrome dev tools, you will be able to see the error messages for it.

Try changing it to as shown below:

import { Action } from 'history';
import css from './Meetupitems.module.css';

function Meetupitem(props) {
return (
  <li className={css.item}>
    <div className={css.image}>
      <image src={props.image} alt={props.title} />
    </div>
    <div className={css.content}>
      <h3>{props.title}</h3>
      <address>{props.address}</address>
      <p>{props.description}</p>
    </div>
    <div className={css.actions}>
      <button></button>
    </div>
  </li>;
)
}

export default Meetupitem;

Sign up to request clarification or add additional context in comments.

1 Comment

Lol i missed a return why i didn't notice this thx!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.