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

时间:2018-03-02 01:57:46

标签: reactjs

一直在与这个错误作斗争,似乎无法弄明白。我已经读过其他人有过的其他类似错误 - 似乎很常见,但每个人都有不同的解决方案。

`

import React, { Component } from 'react';
import Track from '../Track/Track';
import './TrackList.css';

class TrackList extends Component {
    constructor(props) {
        super(props);
    }

    render() {
        return (
            <div className="TrackList">
                {
                    this.props.tracks.map(track => {
                        return <Track key={track.id} track={track} />
                    })
                }
            </div>
        )
    }
}

    export default TrackList;

`

任何想法?

2 个答案:

答案 0 :(得分:2)

render() {
        const {tracks} = this.props;
        // if you are retrieving tracks from an API display a loader
        if (!tracks || tracks.length === 0) {
           return (<div>No tracks provided</div>)
        }

        return (
            <div className="TrackList">
                {
                    tracks.map(track => {
                        return <Track key={track.id} track={track} />
                    })
                }
            </div>
        )
    }

答案 1 :(得分:0)

看起来轨道未定义,这意味着没有名为&#34; track&#34;的属性。确保设置了track属性。