React - map array to child component The Next CEO of Stack OverflowCreate ArrayList from arrayHow do I check if an array includes an object in JavaScript?How to append something to an array?How to insert an item into an array at a specific index (JavaScript)?Sort array of objects by string property valueHow do I empty an array in JavaScript?Loop through an array in JavaScriptHow to check if an object is an array?How do I remove a particular element from an array in JavaScript?For-each over an array in JavaScript?

TikZ: How to fill area with a special pattern?

Easy to read palindrome checker

How many extra stops do monopods offer for tele photographs?

Can I board the first leg of the flight without having final country's visa?

Is it correct to say moon starry nights?

Can this note be analyzed as a non-chord tone?

Is dried pee considered dirt?

How to Implement Deterministic Encryption Safely in .NET

Purpose of level-shifter with same in and out voltages

In the "Harry Potter and the Order of the Phoenix" videogame, what potion is used to sabotage Umbridge's Speakers?

Calculate the Mean mean of two numbers

Is there such a thing as a proper verb, like a proper noun?

What difference does it make using sed with/without whitespaces?

Towers in the ocean; How deep can they be built?

Physiological effects of huge anime eyes

Which one is the true statement?

what's the use of '% to gdp' type of variables?

Sulfuric acid symmetry point group

How to properly draw diagonal line while using multicolumn inside tabular environment?

Would a grinding machine be a simple and workable propulsion system for an interplanetary spacecraft?

Help! I cannot understand this game’s notations!

What steps are necessary to read a Modern SSD in Medieval Europe?

Traveling with my 5 year old daughter (as the father) without the mother from Germany to Mexico

Help understanding this unsettling image of Titan, Epimetheus, and Saturn's rings?



React - map array to child component



The Next CEO of Stack OverflowCreate ArrayList from arrayHow do I check if an array includes an object in JavaScript?How to append something to an array?How to insert an item into an array at a specific index (JavaScript)?Sort array of objects by string property valueHow do I empty an array in JavaScript?Loop through an array in JavaScriptHow to check if an object is an array?How do I remove a particular element from an array in JavaScript?For-each over an array in JavaScript?










8















I'm coding a site with multiple pages. A page ComponentA, have a child component that return sections with titles and paragraphs.



The array in ComponentA pass data as props to the child. Inside the child, a map function return the paragraphs correct. What's missing for the titles, how would you do to pass title1 to paragraph1, title2 to paragraph2 and so on?



ComponentA:



import Child from "../components/child";

const ComponentA = () =>
<Layout>
<h1>Home Page</h1>
<Child title=info.title text=info.text />
</Layout>


const info =
title: ["Title1", "Title2"],
text: ["Paragraph1", "Paragraph2"]
;


Child component:



const Child = ( text, title ) => 
return (
<div>
text.map(text =>
return (
<div>
<h3>title</h3>
<p>text</p>
</div>
);
)
</div>
);
;









share|improve this question




























    8















    I'm coding a site with multiple pages. A page ComponentA, have a child component that return sections with titles and paragraphs.



    The array in ComponentA pass data as props to the child. Inside the child, a map function return the paragraphs correct. What's missing for the titles, how would you do to pass title1 to paragraph1, title2 to paragraph2 and so on?



    ComponentA:



    import Child from "../components/child";

    const ComponentA = () =>
    <Layout>
    <h1>Home Page</h1>
    <Child title=info.title text=info.text />
    </Layout>


    const info =
    title: ["Title1", "Title2"],
    text: ["Paragraph1", "Paragraph2"]
    ;


    Child component:



    const Child = ( text, title ) => 
    return (
    <div>
    text.map(text =>
    return (
    <div>
    <h3>title</h3>
    <p>text</p>
    </div>
    );
    )
    </div>
    );
    ;









    share|improve this question


























      8












      8








      8








      I'm coding a site with multiple pages. A page ComponentA, have a child component that return sections with titles and paragraphs.



      The array in ComponentA pass data as props to the child. Inside the child, a map function return the paragraphs correct. What's missing for the titles, how would you do to pass title1 to paragraph1, title2 to paragraph2 and so on?



      ComponentA:



      import Child from "../components/child";

      const ComponentA = () =>
      <Layout>
      <h1>Home Page</h1>
      <Child title=info.title text=info.text />
      </Layout>


      const info =
      title: ["Title1", "Title2"],
      text: ["Paragraph1", "Paragraph2"]
      ;


      Child component:



      const Child = ( text, title ) => 
      return (
      <div>
      text.map(text =>
      return (
      <div>
      <h3>title</h3>
      <p>text</p>
      </div>
      );
      )
      </div>
      );
      ;









      share|improve this question
















      I'm coding a site with multiple pages. A page ComponentA, have a child component that return sections with titles and paragraphs.



      The array in ComponentA pass data as props to the child. Inside the child, a map function return the paragraphs correct. What's missing for the titles, how would you do to pass title1 to paragraph1, title2 to paragraph2 and so on?



      ComponentA:



      import Child from "../components/child";

      const ComponentA = () =>
      <Layout>
      <h1>Home Page</h1>
      <Child title=info.title text=info.text />
      </Layout>


      const info =
      title: ["Title1", "Title2"],
      text: ["Paragraph1", "Paragraph2"]
      ;


      Child component:



      const Child = ( text, title ) => 
      return (
      <div>
      text.map(text =>
      return (
      <div>
      <h3>title</h3>
      <p>text</p>
      </div>
      );
      )
      </div>
      );
      ;






      javascript arrays reactjs






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Mar 24 at 7:07









      kukkuz

      29.5k62870




      29.5k62870










      asked Mar 24 at 6:22









      noxstanoxsta

      412




      412






















          3 Answers
          3






          active

          oldest

          votes


















          4














          Your info object is not an iterable list - so I would convert them into a list title, text like so:



          const data = info.title.map((e,i) => 
          return title : e, text: info.text[i]
          )


          Now I would shift the map() function to ComponentA instead of Child as that makes the child component more meaningful.



          See demo below:






          const info = 
          title: ["Title1", "Title2"],
          text: ["Paragraph1", "Paragraph2"]
          ;

          const data = info.title.map((e,i) =>
          return title : e, text: info.text[i]
          )

          const ComponentA = () =>
          return (
          <div>
          <h1>Home Page</h1>
          data.map(item =>
          return (
          <Child key=item.title title=item.title text=item.text />
          );
          )

          </div>
          )


          const Child = ( text, title ) =>
          return (
          <div>
          <h3>title</h3>
          <p>text</p>
          </div>
          );
          ;

          ReactDOM.render(
          <ComponentA/>,
          document.getElementById('root'));

          <script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
          <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
          <div id="root"/>








          share|improve this answer






























            1














            You can iterate over text and usnig index access the title






            const ComponentA = () => 
            return (
            <div>
            <h1>Home Page</h1>
            <Child title=info.title text=info.text />
            </div>
            )


            const info =
            title: ["Title1", "Title2"],
            text: ["Paragraph1", "Paragraph2"]
            ;

            const Child = ( text, title ) =>
            return (
            <div>
            text.map((text1, index) =>
            return (
            <div>
            <h3>title[index]</h3>
            <p>text1</p>
            </div>
            );
            )
            </div>
            );
            ;

            ReactDOM.render(<ComponentA />, document.getElementById('app'));

            <script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
            <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
            <div id="app"/>








            share|improve this answer






























              1














              You can change your children component like this, since text is an array so you need to access it values by index.



              const Child = ( text, title ) => 
              return (
              <div>
              text.map((text,index) =>
              return (
              <div>
              <h3>title[index]</h3>
              <p>text</p>
              </div>
              );
              )
              </div>
              );
              ;


              You can even change you parent component to something like this



              import Child from "../components/child";

              const ComponentA = () =>
              <Layout>
              <h1>Home Page</h1>
              info.text.map((text,index)=> <Child title=info.title[index] text=text />
              </Layout>


              const info =
              title: ["Title1", "Title2"],
              text: ["Paragraph1", "Paragraph2"]
              ;


              And then your child should be



              const Child = ( text, title ) => 
              return (
              <div>
              <h3>title</h3>
              <p>text</p>
              </div>
              );
              ;





              share|improve this answer

























                Your Answer






                StackExchange.ifUsing("editor", function ()
                StackExchange.using("externalEditor", function ()
                StackExchange.using("snippets", function ()
                StackExchange.snippets.init();
                );
                );
                , "code-snippets");

                StackExchange.ready(function()
                var channelOptions =
                tags: "".split(" "),
                id: "1"
                ;
                initTagRenderer("".split(" "), "".split(" "), channelOptions);

                StackExchange.using("externalEditor", function()
                // Have to fire editor after snippets, if snippets enabled
                if (StackExchange.settings.snippets.snippetsEnabled)
                StackExchange.using("snippets", function()
                createEditor();
                );

                else
                createEditor();

                );

                function createEditor()
                StackExchange.prepareEditor(
                heartbeatType: 'answer',
                autoActivateHeartbeat: false,
                convertImagesToLinks: true,
                noModals: true,
                showLowRepImageUploadWarning: true,
                reputationToPostImages: 10,
                bindNavPrevention: true,
                postfix: "",
                imageUploader:
                brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
                contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
                allowUrls: true
                ,
                onDemand: true,
                discardSelector: ".discard-answer"
                ,immediatelyShowMarkdownHelp:true
                );



                );













                draft saved

                draft discarded


















                StackExchange.ready(
                function ()
                StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55321253%2freact-map-array-to-child-component%23new-answer', 'question_page');

                );

                Post as a guest















                Required, but never shown

























                3 Answers
                3






                active

                oldest

                votes








                3 Answers
                3






                active

                oldest

                votes









                active

                oldest

                votes






                active

                oldest

                votes









                4














                Your info object is not an iterable list - so I would convert them into a list title, text like so:



                const data = info.title.map((e,i) => 
                return title : e, text: info.text[i]
                )


                Now I would shift the map() function to ComponentA instead of Child as that makes the child component more meaningful.



                See demo below:






                const info = 
                title: ["Title1", "Title2"],
                text: ["Paragraph1", "Paragraph2"]
                ;

                const data = info.title.map((e,i) =>
                return title : e, text: info.text[i]
                )

                const ComponentA = () =>
                return (
                <div>
                <h1>Home Page</h1>
                data.map(item =>
                return (
                <Child key=item.title title=item.title text=item.text />
                );
                )

                </div>
                )


                const Child = ( text, title ) =>
                return (
                <div>
                <h3>title</h3>
                <p>text</p>
                </div>
                );
                ;

                ReactDOM.render(
                <ComponentA/>,
                document.getElementById('root'));

                <script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
                <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
                <div id="root"/>








                share|improve this answer



























                  4














                  Your info object is not an iterable list - so I would convert them into a list title, text like so:



                  const data = info.title.map((e,i) => 
                  return title : e, text: info.text[i]
                  )


                  Now I would shift the map() function to ComponentA instead of Child as that makes the child component more meaningful.



                  See demo below:






                  const info = 
                  title: ["Title1", "Title2"],
                  text: ["Paragraph1", "Paragraph2"]
                  ;

                  const data = info.title.map((e,i) =>
                  return title : e, text: info.text[i]
                  )

                  const ComponentA = () =>
                  return (
                  <div>
                  <h1>Home Page</h1>
                  data.map(item =>
                  return (
                  <Child key=item.title title=item.title text=item.text />
                  );
                  )

                  </div>
                  )


                  const Child = ( text, title ) =>
                  return (
                  <div>
                  <h3>title</h3>
                  <p>text</p>
                  </div>
                  );
                  ;

                  ReactDOM.render(
                  <ComponentA/>,
                  document.getElementById('root'));

                  <script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
                  <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
                  <div id="root"/>








                  share|improve this answer

























                    4












                    4








                    4







                    Your info object is not an iterable list - so I would convert them into a list title, text like so:



                    const data = info.title.map((e,i) => 
                    return title : e, text: info.text[i]
                    )


                    Now I would shift the map() function to ComponentA instead of Child as that makes the child component more meaningful.



                    See demo below:






                    const info = 
                    title: ["Title1", "Title2"],
                    text: ["Paragraph1", "Paragraph2"]
                    ;

                    const data = info.title.map((e,i) =>
                    return title : e, text: info.text[i]
                    )

                    const ComponentA = () =>
                    return (
                    <div>
                    <h1>Home Page</h1>
                    data.map(item =>
                    return (
                    <Child key=item.title title=item.title text=item.text />
                    );
                    )

                    </div>
                    )


                    const Child = ( text, title ) =>
                    return (
                    <div>
                    <h3>title</h3>
                    <p>text</p>
                    </div>
                    );
                    ;

                    ReactDOM.render(
                    <ComponentA/>,
                    document.getElementById('root'));

                    <script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
                    <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
                    <div id="root"/>








                    share|improve this answer













                    Your info object is not an iterable list - so I would convert them into a list title, text like so:



                    const data = info.title.map((e,i) => 
                    return title : e, text: info.text[i]
                    )


                    Now I would shift the map() function to ComponentA instead of Child as that makes the child component more meaningful.



                    See demo below:






                    const info = 
                    title: ["Title1", "Title2"],
                    text: ["Paragraph1", "Paragraph2"]
                    ;

                    const data = info.title.map((e,i) =>
                    return title : e, text: info.text[i]
                    )

                    const ComponentA = () =>
                    return (
                    <div>
                    <h1>Home Page</h1>
                    data.map(item =>
                    return (
                    <Child key=item.title title=item.title text=item.text />
                    );
                    )

                    </div>
                    )


                    const Child = ( text, title ) =>
                    return (
                    <div>
                    <h3>title</h3>
                    <p>text</p>
                    </div>
                    );
                    ;

                    ReactDOM.render(
                    <ComponentA/>,
                    document.getElementById('root'));

                    <script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
                    <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
                    <div id="root"/>








                    const info = 
                    title: ["Title1", "Title2"],
                    text: ["Paragraph1", "Paragraph2"]
                    ;

                    const data = info.title.map((e,i) =>
                    return title : e, text: info.text[i]
                    )

                    const ComponentA = () =>
                    return (
                    <div>
                    <h1>Home Page</h1>
                    data.map(item =>
                    return (
                    <Child key=item.title title=item.title text=item.text />
                    );
                    )

                    </div>
                    )


                    const Child = ( text, title ) =>
                    return (
                    <div>
                    <h3>title</h3>
                    <p>text</p>
                    </div>
                    );
                    ;

                    ReactDOM.render(
                    <ComponentA/>,
                    document.getElementById('root'));

                    <script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
                    <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
                    <div id="root"/>





                    const info = 
                    title: ["Title1", "Title2"],
                    text: ["Paragraph1", "Paragraph2"]
                    ;

                    const data = info.title.map((e,i) =>
                    return title : e, text: info.text[i]
                    )

                    const ComponentA = () =>
                    return (
                    <div>
                    <h1>Home Page</h1>
                    data.map(item =>
                    return (
                    <Child key=item.title title=item.title text=item.text />
                    );
                    )

                    </div>
                    )


                    const Child = ( text, title ) =>
                    return (
                    <div>
                    <h3>title</h3>
                    <p>text</p>
                    </div>
                    );
                    ;

                    ReactDOM.render(
                    <ComponentA/>,
                    document.getElementById('root'));

                    <script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
                    <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
                    <div id="root"/>






                    share|improve this answer












                    share|improve this answer



                    share|improve this answer










                    answered Mar 24 at 7:06









                    kukkuzkukkuz

                    29.5k62870




                    29.5k62870























                        1














                        You can iterate over text and usnig index access the title






                        const ComponentA = () => 
                        return (
                        <div>
                        <h1>Home Page</h1>
                        <Child title=info.title text=info.text />
                        </div>
                        )


                        const info =
                        title: ["Title1", "Title2"],
                        text: ["Paragraph1", "Paragraph2"]
                        ;

                        const Child = ( text, title ) =>
                        return (
                        <div>
                        text.map((text1, index) =>
                        return (
                        <div>
                        <h3>title[index]</h3>
                        <p>text1</p>
                        </div>
                        );
                        )
                        </div>
                        );
                        ;

                        ReactDOM.render(<ComponentA />, document.getElementById('app'));

                        <script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
                        <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
                        <div id="app"/>








                        share|improve this answer



























                          1














                          You can iterate over text and usnig index access the title






                          const ComponentA = () => 
                          return (
                          <div>
                          <h1>Home Page</h1>
                          <Child title=info.title text=info.text />
                          </div>
                          )


                          const info =
                          title: ["Title1", "Title2"],
                          text: ["Paragraph1", "Paragraph2"]
                          ;

                          const Child = ( text, title ) =>
                          return (
                          <div>
                          text.map((text1, index) =>
                          return (
                          <div>
                          <h3>title[index]</h3>
                          <p>text1</p>
                          </div>
                          );
                          )
                          </div>
                          );
                          ;

                          ReactDOM.render(<ComponentA />, document.getElementById('app'));

                          <script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
                          <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
                          <div id="app"/>








                          share|improve this answer

























                            1












                            1








                            1







                            You can iterate over text and usnig index access the title






                            const ComponentA = () => 
                            return (
                            <div>
                            <h1>Home Page</h1>
                            <Child title=info.title text=info.text />
                            </div>
                            )


                            const info =
                            title: ["Title1", "Title2"],
                            text: ["Paragraph1", "Paragraph2"]
                            ;

                            const Child = ( text, title ) =>
                            return (
                            <div>
                            text.map((text1, index) =>
                            return (
                            <div>
                            <h3>title[index]</h3>
                            <p>text1</p>
                            </div>
                            );
                            )
                            </div>
                            );
                            ;

                            ReactDOM.render(<ComponentA />, document.getElementById('app'));

                            <script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
                            <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
                            <div id="app"/>








                            share|improve this answer













                            You can iterate over text and usnig index access the title






                            const ComponentA = () => 
                            return (
                            <div>
                            <h1>Home Page</h1>
                            <Child title=info.title text=info.text />
                            </div>
                            )


                            const info =
                            title: ["Title1", "Title2"],
                            text: ["Paragraph1", "Paragraph2"]
                            ;

                            const Child = ( text, title ) =>
                            return (
                            <div>
                            text.map((text1, index) =>
                            return (
                            <div>
                            <h3>title[index]</h3>
                            <p>text1</p>
                            </div>
                            );
                            )
                            </div>
                            );
                            ;

                            ReactDOM.render(<ComponentA />, document.getElementById('app'));

                            <script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
                            <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
                            <div id="app"/>








                            const ComponentA = () => 
                            return (
                            <div>
                            <h1>Home Page</h1>
                            <Child title=info.title text=info.text />
                            </div>
                            )


                            const info =
                            title: ["Title1", "Title2"],
                            text: ["Paragraph1", "Paragraph2"]
                            ;

                            const Child = ( text, title ) =>
                            return (
                            <div>
                            text.map((text1, index) =>
                            return (
                            <div>
                            <h3>title[index]</h3>
                            <p>text1</p>
                            </div>
                            );
                            )
                            </div>
                            );
                            ;

                            ReactDOM.render(<ComponentA />, document.getElementById('app'));

                            <script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
                            <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
                            <div id="app"/>





                            const ComponentA = () => 
                            return (
                            <div>
                            <h1>Home Page</h1>
                            <Child title=info.title text=info.text />
                            </div>
                            )


                            const info =
                            title: ["Title1", "Title2"],
                            text: ["Paragraph1", "Paragraph2"]
                            ;

                            const Child = ( text, title ) =>
                            return (
                            <div>
                            text.map((text1, index) =>
                            return (
                            <div>
                            <h3>title[index]</h3>
                            <p>text1</p>
                            </div>
                            );
                            )
                            </div>
                            );
                            ;

                            ReactDOM.render(<ComponentA />, document.getElementById('app'));

                            <script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
                            <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
                            <div id="app"/>






                            share|improve this answer












                            share|improve this answer



                            share|improve this answer










                            answered Mar 24 at 6:33









                            Shubham KhatriShubham Khatri

                            94.4k15119160




                            94.4k15119160





















                                1














                                You can change your children component like this, since text is an array so you need to access it values by index.



                                const Child = ( text, title ) => 
                                return (
                                <div>
                                text.map((text,index) =>
                                return (
                                <div>
                                <h3>title[index]</h3>
                                <p>text</p>
                                </div>
                                );
                                )
                                </div>
                                );
                                ;


                                You can even change you parent component to something like this



                                import Child from "../components/child";

                                const ComponentA = () =>
                                <Layout>
                                <h1>Home Page</h1>
                                info.text.map((text,index)=> <Child title=info.title[index] text=text />
                                </Layout>


                                const info =
                                title: ["Title1", "Title2"],
                                text: ["Paragraph1", "Paragraph2"]
                                ;


                                And then your child should be



                                const Child = ( text, title ) => 
                                return (
                                <div>
                                <h3>title</h3>
                                <p>text</p>
                                </div>
                                );
                                ;





                                share|improve this answer





























                                  1














                                  You can change your children component like this, since text is an array so you need to access it values by index.



                                  const Child = ( text, title ) => 
                                  return (
                                  <div>
                                  text.map((text,index) =>
                                  return (
                                  <div>
                                  <h3>title[index]</h3>
                                  <p>text</p>
                                  </div>
                                  );
                                  )
                                  </div>
                                  );
                                  ;


                                  You can even change you parent component to something like this



                                  import Child from "../components/child";

                                  const ComponentA = () =>
                                  <Layout>
                                  <h1>Home Page</h1>
                                  info.text.map((text,index)=> <Child title=info.title[index] text=text />
                                  </Layout>


                                  const info =
                                  title: ["Title1", "Title2"],
                                  text: ["Paragraph1", "Paragraph2"]
                                  ;


                                  And then your child should be



                                  const Child = ( text, title ) => 
                                  return (
                                  <div>
                                  <h3>title</h3>
                                  <p>text</p>
                                  </div>
                                  );
                                  ;





                                  share|improve this answer



























                                    1












                                    1








                                    1







                                    You can change your children component like this, since text is an array so you need to access it values by index.



                                    const Child = ( text, title ) => 
                                    return (
                                    <div>
                                    text.map((text,index) =>
                                    return (
                                    <div>
                                    <h3>title[index]</h3>
                                    <p>text</p>
                                    </div>
                                    );
                                    )
                                    </div>
                                    );
                                    ;


                                    You can even change you parent component to something like this



                                    import Child from "../components/child";

                                    const ComponentA = () =>
                                    <Layout>
                                    <h1>Home Page</h1>
                                    info.text.map((text,index)=> <Child title=info.title[index] text=text />
                                    </Layout>


                                    const info =
                                    title: ["Title1", "Title2"],
                                    text: ["Paragraph1", "Paragraph2"]
                                    ;


                                    And then your child should be



                                    const Child = ( text, title ) => 
                                    return (
                                    <div>
                                    <h3>title</h3>
                                    <p>text</p>
                                    </div>
                                    );
                                    ;





                                    share|improve this answer















                                    You can change your children component like this, since text is an array so you need to access it values by index.



                                    const Child = ( text, title ) => 
                                    return (
                                    <div>
                                    text.map((text,index) =>
                                    return (
                                    <div>
                                    <h3>title[index]</h3>
                                    <p>text</p>
                                    </div>
                                    );
                                    )
                                    </div>
                                    );
                                    ;


                                    You can even change you parent component to something like this



                                    import Child from "../components/child";

                                    const ComponentA = () =>
                                    <Layout>
                                    <h1>Home Page</h1>
                                    info.text.map((text,index)=> <Child title=info.title[index] text=text />
                                    </Layout>


                                    const info =
                                    title: ["Title1", "Title2"],
                                    text: ["Paragraph1", "Paragraph2"]
                                    ;


                                    And then your child should be



                                    const Child = ( text, title ) => 
                                    return (
                                    <div>
                                    <h3>title</h3>
                                    <p>text</p>
                                    </div>
                                    );
                                    ;






                                    share|improve this answer














                                    share|improve this answer



                                    share|improve this answer








                                    edited Mar 24 at 6:51

























                                    answered Mar 24 at 6:31









                                    Code ManiacCode Maniac

                                    10.9k2733




                                    10.9k2733



























                                        draft saved

                                        draft discarded
















































                                        Thanks for contributing an answer to Stack Overflow!


                                        • Please be sure to answer the question. Provide details and share your research!

                                        But avoid


                                        • Asking for help, clarification, or responding to other answers.

                                        • Making statements based on opinion; back them up with references or personal experience.

                                        To learn more, see our tips on writing great answers.




                                        draft saved


                                        draft discarded














                                        StackExchange.ready(
                                        function ()
                                        StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55321253%2freact-map-array-to-child-component%23new-answer', 'question_page');

                                        );

                                        Post as a guest















                                        Required, but never shown





















































                                        Required, but never shown














                                        Required, but never shown












                                        Required, but never shown







                                        Required, but never shown

































                                        Required, but never shown














                                        Required, but never shown












                                        Required, but never shown







                                        Required, but never shown