How to render a list with React

Hey fellow creators,

You don’t know how to render a list with React? Jump in to learn how to do it!

If you prefer to watch the video version, it’s right here :

1. Create a list!

Create a simple React app and add an h1 to your app:


This content originally appeared on DEV Community and was authored by Ustariz Enzo

Hey fellow creators,

You don't know how to render a list with React? Jump in to learn how to do it!

If you prefer to watch the video version, it's right here :

1. Create a list!

Create a simple React app and add an h1 to your app:

function App(){
    return (
        <div className="container">
            <h1>A React List</h1>
        </div>
    )
}

export default App;

To create a list, you need to use the state. Let's import it:

import {useState} from 'React'

Then, you need to create some dummy data to feed our state.

const [data, setData] = useState([
    {
    txt: "Txt 1",
    id: 1,
    },
    {
    txt: "Txt 2",
    id: 2,
    },
    {
    txt: "Txt 3",
    id: 3,
    }
])

Creating an ID like that isn't the best way to do it, but we'll see a tool later on that you can use in order to do it better. For now, let's keep it like that!

2. Render the list with the map() method!

Let's render the list with the map() method. For each item, you'll render an li that contains the text from the data:

return (
    <div className="container">
        <h1>A React List</h1>
        {data.map(item => {
            return (
                <li>
                  {item.txt}
                </li>
                )
            })}
        </div>
    )

As you can see, it's working, however in the console there'll be an error saying that each child in a list should have a unique "key" prop.
React needs that key to understand what has been created, especially if something is deleted or modified.

Therefore you can simply add the key prop to the li tag with the id from the data:

<li key={item.id}>

If you refresh the page, you'll no longer see the error in the console!

3. There's a better way to have a unique id for each of the items in your list!

As said before, the id from the data isn't very secure since they're not unique if it's used in a huge app. In order to fix that, you'll add an uuid package. In your terminal, install it:

npm install uuid

Then, import it in your app:

import {v4 as uuidv4} from 'uuid'

Finally, you can simply use that method in your data:

const [data, setData] = useState([
    {
    txt: "Txt 1",
    id: uuidv4(),
    },
    {
    txt: "Txt 2",
    id: uuidv4(),
    },
    {
    txt: "Txt 3",
    id: uuidv4(),
    }
])

You can log it to see the unique and strong ids this method creates:

console.log(data[0].id);

You now know how to render a list with React! Well done!

Come and take a look at my Youtube channel: https://www.youtube.com/c/Learntocreate/videos

See you soon!

Enzo.


This content originally appeared on DEV Community and was authored by Ustariz Enzo


Print Share Comment Cite Upload Translate Updates
APA

Ustariz Enzo | Sciencx (2021-12-06T07:49:43+00:00) How to render a list with React. Retrieved from https://www.scien.cx/2021/12/06/how-to-render-a-list-with-react/

MLA
" » How to render a list with React." Ustariz Enzo | Sciencx - Monday December 6, 2021, https://www.scien.cx/2021/12/06/how-to-render-a-list-with-react/
HARVARD
Ustariz Enzo | Sciencx Monday December 6, 2021 » How to render a list with React., viewed ,<https://www.scien.cx/2021/12/06/how-to-render-a-list-with-react/>
VANCOUVER
Ustariz Enzo | Sciencx - » How to render a list with React. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2021/12/06/how-to-render-a-list-with-react/
CHICAGO
" » How to render a list with React." Ustariz Enzo | Sciencx - Accessed . https://www.scien.cx/2021/12/06/how-to-render-a-list-with-react/
IEEE
" » How to render a list with React." Ustariz Enzo | Sciencx [Online]. Available: https://www.scien.cx/2021/12/06/how-to-render-a-list-with-react/. [Accessed: ]
rf:citation
» How to render a list with React | Ustariz Enzo | Sciencx | https://www.scien.cx/2021/12/06/how-to-render-a-list-with-react/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.