Passing props to child and parent

This commit is contained in:
Rodrigo Pedroso 2019-06-24 00:19:11 -04:00
commit cbbfc39c4f
2 changed files with 11 additions and 4 deletions

View file

@ -1,12 +1,14 @@
import React from 'react' import React from 'react'
export default function Team({ teams }) { export default function Team({ teams, select }) {
return ( return (
<div className='teams'> <div className='teams'>
<ul className='list'> <ul className='list'>
{teams.map(team => ( {teams.map(team => (
<li className = 'list-item' key={team.id}> <li className = 'list-item' key={team.id}>
<button onClick={() => select(team.name)}>
{ team.name } { team.name }
</button>
</li> </li>
))} ))}
</ul> </ul>

View file

@ -33,6 +33,12 @@ export default function Home() {
fetchData() fetchData()
}, []) }, [])
// MARK: Callbacks
let select = (selected) => {
console.log('Selected ' + selected)
}
// MARK: - Load teams' details // MARK: - Load teams' details
useEffect(() => { useEffect(() => {
teams.map(team => { teams.map(team => {
@ -41,7 +47,6 @@ export default function Home() {
setLoadingDetails(true) setLoadingDetails(true)
let result = await axios(config.api + '/team/' + team.id) let result = await axios(config.api + '/team/' + team.id)
if (result.data) { if (result.data) {
console.log(JSON.stringify(result.data))
setTeamDetails(t => [...t, result.data]) setTeamDetails(t => [...t, result.data])
} }
setLoadingDetails(false) setLoadingDetails(false)
@ -63,7 +68,7 @@ export default function Home() {
{loading ? (<div>Loading...</div>) : ( {loading ? (<div>Loading...</div>) : (
teams !== undefined && teams !== undefined &&
<Team teams={ teams } /> <Team teams={teams} select={select} />
)} )}
{loadingDetails ? (<div>Loading...</div>) : ( {loadingDetails ? (<div>Loading...</div>) : (