Я разрабатываю приложение погоды в React js, используя ax ios. Я использую метод ax ios get внутри метода handleClick. Это нормально для использования, как здесь. И здесь я удалил ключ приложения, но я использую что в моем проекте.
handleClick=()=> { this.setState({isClicked:true},()=>{ const url = `https://api.openweathermap.org/data/2.5/weather?q=${this.state.city}&cnt=${this.state.country}&appid=appKey`; axios.get(url).then((resp)=> { this.setState({ temperature:resp.data.main.temp }) }) }) }
Я думаю, что это нормально использовать в обработчике кликов. И не забудьте снова установить isClicked как false, если оно использовалось для предотвращения двойного щелчка:
isClicked
handleClick=()=> { this.setState({isClicked:true},()=>{ const url = `https://api.openweathermap.org/data/2.5/weather?q=${this.state.city}&cnt=${this.state.country}&appid=appKey`; axios.get(url).then((resp)=> { this.setState({ temperature:resp.data.main.temp, }) }).finally(() => { this.setState({ isClicked: false }) }) }) }