【发布时间】:2020-05-21 11:07:33
【问题描述】:
我添加了营养文件
const Nutrition = () => {
return(
<div>
<p>Label</p>
<p>Quantity</p>
<p>Unit</p>
</div>
)
}
export default Nutrition
我正在尝试在 React 中映射某些东西,但我得到这个错误 map is not function。我正在尝试获取 Api,现在我正在尝试将另一个组件映射到它,但错误仍然存在。有人可以帮助我或给我一个提示
const ApiNutrition = () => {
const [nutritions, setNutritions] = useState([])
useEffect( () => {
getNutritions();
}, [])
const getNutritions = async () => {
const response = await fetch(`https://api.edamam.com/api/nutrition-data?app_id=${API_ID}&app_key=${API_KEY}&ingr=1%20large%20apple`)
const data = await response.json();
setNutritions(data.totalNutrientsKCal)
console.log(data.totalNutrientsKCal);
}
return(
<div>
<form className="container text-center">
<input classname="form-control" type="text" placeholder="CALORIES"/>
<button classname="form-control" type="submit">Submit</button>
</form>
{nutritions.map(nutrition => (
<Nutrition />
))}
</div>
)
}
export default ApiNutrition
【问题讨论】:
-
data.totalNutrientsKCal是一个数组吗?我认为它可能实际上不是一个数组,在这种情况下,您将无法map覆盖它。 -
不,它是一个对象
标签: javascript reactjs error-handling fetch