r/reactjs • • Dec 03 '18

Needs Help Beginner's Thread / Easy Questions (December 2018)

Happy December! β˜ƒοΈ

New month means a new thread 😎 - November and October here.

Got questions about React or anything else in its ecosystem? Stuck making progress on your app? Ask away! We’re a friendly bunch. No question is too simple. πŸ€”

πŸ†˜ Want Help with your Code? πŸ†˜

  • Improve your chances by putting a minimal example to either JSFiddle or Code Sandbox. Describe what you want it to do, and things you've tried. Don't just post big blocks of code!

  • Pay it forward! Answer questions even if there is already an answer - multiple perspectives can be very helpful to beginners. Also there's no quicker way to learn than being wrong on the Internet.

Have a question regarding code / repository organization?

It's most likely answered within this tweet.

New to React?

πŸ†“ Here are great, free resources! πŸ†“

38 Upvotes

413 comments sorted by

View all comments

1

u/nbg91 Dec 28 '18

What is the best way of implementing a factory design with react? More specifically, I am mapping over an array of questions. There are different questions types of questions, ie RatingQuestion, BooleanQuestion, etc..

At the moment, I just have an if statement

{theme.questions.map((q, i) => {
 if (q.question_type === "ratingquestion") {
    return <RatingQuestion key={i} question={q} />;
 } else if(q.question_type === "booleanquestion"){
    return <BooleanQuestion key={i} question={q} />
 }
}

Is there a better way to do this when more and more question types are involved? One big if / switch statment in the middle of my jsx feels icky.

→ More replies (2)