Reputation: 145
I've been searching everywhere to find this but all the answers are about just adding new items to an array with useState.
So imagine I have an array like this
[
{
id: 1,
title: 'take out trash',
done: false
},
{
id: 2,
title: 'wife to dinner',
done: false
},
{
id: 3,
title: 'make react app',
done: false
},
]
});
Now I want to change it with a completely new array by using useState.
Like,
{
[
{
id: 5,
title: 'X',
done: true
},
{
id: 8,
title: 'Y',
done: true
},
{
id: 9,
title: 'Z',
done: true
},
]
})
Upvotes: 2
Views: 1096
Reputation: 536
export default function App() {
const newArray = [
{
id: 5,
title: "X",
done: true
},
{
id: 8,
title: "Y",
done: true
},
{
id: 9,
title: "Z",
done: true
}
];
...
import { useEffect, useState } from "react";
export default function App() {
const newArray = [
{
id: 5,
title: "X",
done: true
},
{
id: 8,
title: "Y",
done: true
},
{
id: 9,
title: "Z",
done: true
}
];
const [data, setData] = useState([]);
useEffect(() => {
setData(newArray);
}, []);
return (
<div>
{data
? data.map((o, i) => <div key={i}> title: {o.title} </div>)
: "loading..."}
</div>
);
}
Upvotes: 3