【发布时间】:2021-07-18 09:28:10
【问题描述】:
import React, { useState } from 'react'
import Display from './components/Display';
const App = () => {
const [input,setInput] = useState("");
const getData = async () => {
const myAPI = await fetch(`http://api.openweathermap.org/data/2.5/weather?q=${input}&units=metric&appid=60dfee3eb8199cac3e55af5339fd0761`);
const response = await myAPI.json();
console.log(response); //want to use response as a prop in Display component
}
return(
<div className="container">
<h1>Weather Report</h1>
<Display title={"City Name :"} /> //here
<Display title={"Temperature :"} /> //here
<Display title={"Description :"} /> //here
<input type={input} onChange={e => setInput(e.target.value)} className="input"/>
<button className="btn-style" onClick={getData}>Fetch</button>
</div>
);
}
export default App;
【问题讨论】:
-
您可以在 API 响应中使用另一个 useState。像
const [response, setResponse] = useState({}),然后在getData中调用setResponse(response),并将响应传递给Display组件 -
请解释一下您要实现的目标,以及您指的是哪个功能?
-
@GouthamJ.M 我只想将响应(对象)传递到
组件中,例如 。
标签: reactjs async-await fetch-api react-props