开发者问题收集

TypeError:无法读取未定义的属性“map”:具有对象列表的对象

2020-05-31
58

我正在尝试使用以下 json 格式映射数据。 一个具有对象列表的对象。

'''{"pki_user_id":1234,"vc_username":null,"vc_password":null,"vc_name":"Muhammad","vc_email":" [email protected] ","b_isreset":false,"b_timeout":0,"_RoleDto":[{"pki_role_id":30019,"vc_rolename":"SuperUser","vc_roledesc":"Super用户”,“vc_type”:null,“i_group”:0,“_MenuDto”:null},{“pki_role_id”:20015,“vc_rolename”:“COMADM”,“vc_roledesc”:“能力管理员”,“vc_type”:null,“i_group”:0,“_MenuDto”:null},{“pki_role_id”:2,“vc_rolename”:“IT”,“vc_roledesc”:“IT”,“vc_type”:null,“i_group”:0,“_MenuDto”:null},{“pki_role_id”:3,“vc_rolename”:“TAA”,“vc_roledesc”:“考勤管理员”,“vc_type”:null,“i_group”:0,“_MenuDto”:null}]}'''

这就是我检索的方式数据:

{props.LoginDto.vc_email}

        {props.LoginDto._RoleDto.map((record,i) => (

          <div key = {i}> {record.pki_role_id}</div>
        ))}

      </div>

每次我都会收到此错误。 我使用 react redux 接收 props 数据。

2个回答

添加如下空值检查:

{props.LoginDto && props.LoginDto.vc_email}

        {props.LoginDto && props.LoginDto._RoleDto && !!props.LoginDto._RoleDto.length && props.LoginDto._RoleDto.map((record,i) => (

          <div key = {i}> {record.pki_role_id}</div>
        ))}

      </div>
Akhilesh
2020-05-31

{props.LoginDto && props.LoginDto.vc_email}

{props.LoginDto && props.LoginDto._RoleDto && !!props.LoginDto._RoleDto.length && props.LoginDto._RoleDto.map((record,i) => (

      <div key = {i}> {record.pki_role_id}</div>
    ))}

  </div>
Uma Rani
2022-01-23