无法读取ReactJS中未定义的属性“ map”

itgirl1234

我的 ReactJS 应用程序在从 api 获取数据时遇到了问题。我仍然有一个错误:“无法读取未定义的属性‘地图’”,我不知道为什么会发生这种情况。

我的代码:UsersList.js

import React from 'react';
import ReactDOM from 'react-dom';
import fetch from 'isomorphic-fetch';
import { Card, Container, Icon } from 'semantic-ui-react'
import User from './User'

class ProfilesList extends React.Component {
  constructor(props) {
    super(props);
    this.state = {
      users: [],
      fetched: false,
      loading: false,
    };
  }
  componentWillMount(){
    this.setState({
      loading : true
    });
    fetch('http://58be98154389c312007f403f.mockapi.io/users/users').then(res => res.json())
    .then(res =>{
      this.setState({
        users : res.results,
        loading : true,
        fetched : true
      });
    });
  }
  render() {
    const {fetched, loading, users} = this.state;
    let content;
    if(fetched){
      content = <div>{this.state.users.map((user,index) =>
      <User key={user.username} id={index+1} user={user}/>)}</div>;
    }
    else if(loading && !fetched){
        content = <p> Loading ...</p>;
    }
    else{
      content = (<div></div>);
    }
    return (
      <div>
        {content}
      </div>
    );
  }
}

export default ProfilesList;

User.js

import React from 'react';
import ReactDOM from 'react-dom';
import { Card, Container, Icon } from 'semantic-ui-react'


class User extends React.Component {
  render() {
    const {user, id} = this.props;
    return (
      <Card
        image='http://semantic-ui.com/images/avatar/large/elliot.jpg'
        header={user.username}
        meta='Friend'
        description='Elliot is a sound engineer living in Nashville who enjoys playing guitar and hanging with his cat.'
        extra={(
          <a>
            <Icon name='user' />
            16 Friends
          </a>
        )}
      />
    );
  }
}

export default User;

谢谢你的帮助!

嘲笑

state.users当你尝试做的是未定义this.state.users.map()在你的render功能。所以任务#1 是找出为什么你fetch()返回 undefined 并修复它。当您得到未定义的结果或其他错误并适当地设置您的状态时,对这种情况进行一些处理是一个好主意。此外,我倾向于undefined在尝试之前检查预期的数组是否不是map,如下所示:

{
    expectedArray
    ?
        expectedArray.map(someMappingFunction)
    :
        <div>expectedArray was 'undefined' or otherwise 'falsy'</div>
}

这样的条件语句称为“三元”并且非常有用,因为它可以作为“if/else”语句嵌入到 JSX 中。它的形式为(condition) ? (expression if true) : (expression if false)例如:

var foo = 7;
var bar = (foo % 2 == 0) ? "Even" : "Odd";
console.log(bar); // "Odd"

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

TypeError:在react中创建下拉选择时无法读取未定义的属性'map'

来自分类Dev

ReactJS失败,并显示错误“无法读取未定义的属性'map'”

来自分类Dev

map.getBounds()怪异的行为(未捕获的TypeError:无法读取未定义的属性'getNorthEast')

来自分类Dev

Uncaught TypeError:无法使用React读取未定义的属性“ map”

来自分类Dev

未捕获的TypeError:无法读取未定义的Google Map V3的属性“ length”

来自分类Dev

reactjs-未捕获的TypeError:无法读取未定义的属性'map'

来自分类Dev

Uncaught TypeError:无法在Reactjs上读取未定义的属性“ map”

来自分类Dev

TypeError:当组件在React中上传文件时,无法读取未定义的属性'map'

来自分类Dev

TypeError:无法读取react-redux中未定义的属性'map'

来自分类Dev

React Jest:TypeError:无法读取未定义的属性“ map”

来自分类Dev

TypeError:无法读取Django中未定义的属性“ map”并做出反应

来自分类Dev

TypeError:无法读取未定义<Angular 8>的属性'map'

来自分类Dev

TypeError:无法读取未定义的属性'map'(axios => getData => setState => .map => return elmItem =>错误)

来自分类Dev

ReactJs-TypeError:无法读取未定义的属性“ map”

来自分类Dev

从Angular 7更新为8后出现“无法读取未定义的属性'map'中的错误”

来自分类Dev

反应TypeError:无法读取未定义的属性'map'

来自分类Dev

ReactJs:使用地图浏览状态元素,TypeError:无法读取未定义的属性“ map”?

来自分类Dev

ReactJS:具有数组的硬编码状态,但仍出现TypeError:无法读取未定义的属性“ map”

来自分类Dev

无法读取React JS中未定义的属性'map'

来自分类Dev

TypeError:无法读取未定义的Reactjs的属性“ map”?

来自分类Dev

如何:修复ReactJS类型错误-无法读取未定义的属性'map'

来自分类Dev

无法读取未定义反应的属性“ map” 17

来自分类Dev

TypeError:在react中创建下拉选择时无法读取未定义的属性'map'

来自分类Dev

类型错误:无法读取reactjs中未定义的属性“ map”

来自分类Dev

TypeError:无法读取未定义的Reactjs的属性“ map”

来自分类Dev

TypeError:无法读取未定义的属性“ map”-如何访问本地json API中的数组

来自分类Dev

TypeError:无法读取未定义的React Native的属性'map'

来自分类Dev

避免无法读取React Redux中未定义的属性'map'

来自分类Dev

无法读取未定义的属性“ map”(ReactJS和AJAX)

Related 相关文章

  1. 1

    TypeError:在react中创建下拉选择时无法读取未定义的属性'map'

  2. 2

    ReactJS失败,并显示错误“无法读取未定义的属性'map'”

  3. 3

    map.getBounds()怪异的行为(未捕获的TypeError:无法读取未定义的属性'getNorthEast')

  4. 4

    Uncaught TypeError:无法使用React读取未定义的属性“ map”

  5. 5

    未捕获的TypeError:无法读取未定义的Google Map V3的属性“ length”

  6. 6

    reactjs-未捕获的TypeError:无法读取未定义的属性'map'

  7. 7

    Uncaught TypeError:无法在Reactjs上读取未定义的属性“ map”

  8. 8

    TypeError:当组件在React中上传文件时,无法读取未定义的属性'map'

  9. 9

    TypeError:无法读取react-redux中未定义的属性'map'

  10. 10

    React Jest:TypeError:无法读取未定义的属性“ map”

  11. 11

    TypeError:无法读取Django中未定义的属性“ map”并做出反应

  12. 12

    TypeError:无法读取未定义<Angular 8>的属性'map'

  13. 13

    TypeError:无法读取未定义的属性'map'(axios => getData => setState => .map => return elmItem =>错误)

  14. 14

    ReactJs-TypeError:无法读取未定义的属性“ map”

  15. 15

    从Angular 7更新为8后出现“无法读取未定义的属性'map'中的错误”

  16. 16

    反应TypeError:无法读取未定义的属性'map'

  17. 17

    ReactJs:使用地图浏览状态元素,TypeError:无法读取未定义的属性“ map”?

  18. 18

    ReactJS:具有数组的硬编码状态,但仍出现TypeError:无法读取未定义的属性“ map”

  19. 19

    无法读取React JS中未定义的属性'map'

  20. 20

    TypeError:无法读取未定义的Reactjs的属性“ map”?

  21. 21

    如何:修复ReactJS类型错误-无法读取未定义的属性'map'

  22. 22

    无法读取未定义反应的属性“ map” 17

  23. 23

    TypeError:在react中创建下拉选择时无法读取未定义的属性'map'

  24. 24

    类型错误:无法读取reactjs中未定义的属性“ map”

  25. 25

    TypeError:无法读取未定义的Reactjs的属性“ map”

  26. 26

    TypeError:无法读取未定义的属性“ map”-如何访问本地json API中的数组

  27. 27

    TypeError:无法读取未定义的React Native的属性'map'

  28. 28

    避免无法读取React Redux中未定义的属性'map'

  29. 29

    无法读取未定义的属性“ map”(ReactJS和AJAX)

热门标签

归档