【问题标题】:Uncaught TypeError: Cannot read properties of undefined (reading 'forEach') - OpenWeather未捕获的类型错误:无法读取未定义的属性(读取 \'forEach\') - OpenWeather
【发布时间】:2022-08-15 16:48:38
【问题描述】:

作为初学者,我正在 React 中开发一个天气应用程序项目。在这种情况下,我使用的是 OpenWeatherAPI。

我的问题是当我尝试使用 forEach 时,它给出了一个错误,如下所示。

ApiCall.jsx:15 Uncaught TypeError: Cannot read properties of undefined (reading \'forEach\')

这是我的 Header 组件:

import ApiCall from \'./ApiCall\';

function Header() {
    const cities = [\"İstanbul\", \"Ankara\", \"İzmir\"]

    return (
        <div>
            <div className=\"header\">
                <select name=\"selection\">
                    <option value=\"istanbul\">{cities[0]}</option>
                    <option value=\"ankara\">{cities[1]}</option>
                    <option value=\"izmir\">{cities[2]}</option>
                </select>
            </div>
            <ApiCall getCities={cities} />
        </div>   
    )

}

export default Header

这是我的 ApiCall 组件:

import axios from \"axios\"
import { useEffect, useState } from \"react\"

function ApiCall({ getCities }) {
    const[data, setData] = useState([])
    
    useEffect(() => {
        axios(`https://api.openweathermap.org/data/2.5/forecast?q=${selectCity}&appid=c681e6e33ec339728fdf88e0b24a2a01`)
        .then(res => setData(res.data))
        .catch(err=> console.log(err))
    })
    
    const { city, list } = data
    
    const selectCity = getCities.array.forEach((element) => {
        if (city.name === element) {
            return element
        }
    });

    return (
      null
    )
}

export default ApiCall

所有答案将不胜感激。

  • getCities.array 应该做什么?

标签: javascript reactjs api


【解决方案1】:

foreach 应该是这样的

getCities.forEach

代替

getCities.array.forEach

你怎么看 ?

【讨论】:

    猜你喜欢
    • 2021-11-24
    • 1970-01-01
    • 1970-01-01
    • 2021-12-22
    • 1970-01-01
    • 2021-12-25
    • 2021-10-31
    • 2021-11-07
    • 2022-01-17
    相关资源
    最近更新 更多