为了账号安全,请及时绑定邮箱和手机立即绑定

TypeError : ...map 不是函数 - react.js

TypeError : ...map 不是函数 - react.js

开满天机 2021-11-12 16:49:58
在我的react.js应用程序中,我有一个这样的功能:state={   c:[]}classRoom(classRooms){    if(classRooms!==null)    {        const updatedClass = classRooms.map((classRoom)=>{            return <ClassRoomUnit displayName={"as"} classID={"asdsa"} />;            //return <li>{classRoom}</li>;        });    }}在我的render方法中,我有: render() {    return (        <div>                            {this.classRoom(this.state.c)}        </div>    );  }c 在 state 中定义,它是一个数组。但它给了我错误,说:classRooms.map is not a function
查看完整描述

1 回答

?
ibeautiful

TA贡献1993条经验 获得超5个赞

根据评论和 stackblitz 链接,问题是您没有从函数内部返回值


import React, { Component } from 'react';

import { render } from 'react-dom';

import Hello from './Hello';

import './style.css';


class ClassRoomUnit extends Component{

    displayName;

    classID;

    render() {

        return(

          <div>

            {this.props.displayName}

            {this.props.classID}

          </div>


        );

    }

}


class App extends Component {


  state={

    c:[1,2,3]

  }


  classRoom(classRooms)

    {

        console.log(classRooms);

        if(classRooms!==null)

        {

            const updatedClass = classRooms.map((classRoom)=>{

                return <ClassRoomUnit displayName={"as"} classID={"asdsa"} />;

            });

        }

        return updatedClass;

    }


  render() {

    return (

      <div>

        dynamic list start

        {this.classRoom(this.state.c)}

        dynamic list end


      </div>

    );

  }

}


render(<App />, document.getElementById('root'));


查看完整回答
反对 回复 2021-11-12
  • 1 回答
  • 0 关注
  • 130 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信