【问题标题】:TypeError: Cannot read property 'map' of undefined HerokuTypeError:无法读取未定义 Heroku 的属性“地图”
【发布时间】:2021-04-20 10:11:55
【问题描述】:

我试图弄清楚这里发生了什么,但有时当它太容易时我找不到它。所以我在寻求帮助。感谢您的所有建议

https://github.com/Vamusmart/newsappteam

 2 | class Feed extends React.Component {
      3 |   render() {
      4 |     return (
    > 5 |       <div>
      6 |         {this.props.data.map(article => (
      7 |           <div className="grid-container">
      8 | 

        <a className="content-title" href={article.url}> 


  19 |   const data = await api_call.json();
  20 |   console.log(data.articles);
  21 | 
> 22 |   this.setState({
     | ^  23 |     homepageData: data.articles
  24 |   });
  25 | };

【问题讨论】:

  • 为您的问题添加更多上下文,您尝试了什么?你在哪里得到错误等等。

标签: reactjs


【解决方案1】:

请不要发布重复的问题。

尽管如此,正如错误消息所述,在 undefined 上找不到属性 map。这意味着您尝试迭代的值是undefined。在这种情况下,是由于:this.props.data === undefined

您可以通过将此属性(或父组件中的状态)的默认值定义为空数组来解决此问题。您还可以专门处理空条件,并且仅在您的变量具有有效/预期类型时才映射。

【讨论】:

    猜你喜欢
    • 2022-01-14
    • 2019-03-02
    • 1970-01-01
    • 1970-01-01
    • 2021-11-17
    • 2022-01-12
    • 2021-02-25
    • 2018-02-08
    相关资源
    最近更新 更多