I don't know why my function not working. I wan't to display random citites from array? But if I click button then show me error "AppHooks.js:15 Uncaught TypeError: Cannot read property 'length' of undefined".
What I do wrong?
import React, {useState} from 'react';
export default function AppHooks () {
const [cities, setCities] = useState([
{
nameCity: 'Kraków'
},
{
nameCity: "Kielce"
}
])
function randomCities (e, cities) {
let len = cities.length;
// let randCiti = cities[Math.floor(Math.random() * cities.length)];
setCities(cities[Math.floor(Math.random() * len)]);
return cities
}
let citi = cities.map((cit, i) => {
return(
<div key={i}>
{cit.nameCity}
</div>)
}
)
console.log(cities[0]);
return(
<div>
{citi}
<button onClick={randomCities}> Change</button>
</div>
)
}
Aucun commentaire:
Enregistrer un commentaire