Estou com um projeto que ao entrar no componente ele carrega as informações do modal, pois o modal está com useEffect
useEffect(() => { buscarPlantas(); }, []);
Mas quero que esta lista só carregue quando clique no componente.
Consegui colocando no onFocus={buscarPlantas} do componente. Só que ele não carrega a lista no componente.
const [plantas, setPantas] = useState([]);
const buscarPlantas= () => { const plants = []; getBuscarPlantas().then((response) => { response.data.data.map(plant => ( plants.push(plant.attributes) )) }) setPlantas(plants); }
<Select value={age} onChange={handleChange} displayEmpty className={classes.selectEmpty} inputProps={{ "aria-label": "Without label" }} onFocus={buscarPlantas} > <MenuItem value=""> <em className={classes.selectPlaceholder}> Selecionar plantas </em> </MenuItem> { plantas.map(planta => { return ( <MenuItem key={planta} value={planta}>{planta}</MenuItem> ) }) } </Select>
O que pode estar falando ?