Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

225
Views
How to pass data from async fuction to useState() Flask API + React Frontend

I'm trying to get the state of my hue lights using my API and based on this information render the page ( basically if my lamp is on I want my toggle switch on website to be already toggled once the page loads) Currently I'm trying pass data fetched from my API using async function to the useState()

Here is my code

const LightSwitch = (props) => {

  async function lightState(){
    const response = await httpGet('http://192.168.1.124/get_light_state/id/' + props.id);
    let data = await response
    return data;
  } 

  lightState().then(data => {
    console.log(data.Light);
  }
    )

    const [toggleSwitch, setToggleSwitch] = useState();

My API response is

{
  "Light": false
}

Here is my whole code for reference.

import React, { useState } from "react";
import { Switch } from "antd";
import "./LightSwitch.css";

async function httpGet (url){
  const response = await fetch(url,{method: 'GET'});
  const string = await response.text();
  const json = string === "" ? {} : JSON.parse(string);
  return json;
  
}
const LightSwitch = (props) => {

  async function lightState(){
    const response = await httpGet('http://192.168.1.124/get_light_state/id/' + props.id);
    let data = await response
    return data;
  } 

  lightState().then(data => {
    console.log(data.Light);
  }
    )

    const [toggleSwitch, setToggleSwitch] = useState();

  
  const onChangeSwitch = (checked) => {
    setToggleSwitch(!toggleSwitch);
    if (checked) {
      console.log(props.name + ' on');
      httpGet('http://192.168.1.124/turn_on/id/' + props.id);
    }else{
      console.log(props.name + ' off');
      httpGet('http://192.168.1.124/turn_off/id/'+ props.id);
    }

  };

  return (
    <div>
      <Switch checked={toggleSwitch} onChange={onChangeSwitch}></Switch>
    </div>
  );
};
export default LightSwitch;

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!