首页 > 解决方案 > React TypeError:onGenreChange 不是函数

问题描述

我正在尝试将函数传递给事件侦听器(onClick),但出现以下错误:TypeError:onGenreChange 不是函数。我相信我正确地将 lambda 函数传递给了事件侦听器。有谁知道为什么这不起作用?谢谢!

class Genres extends Component {
    render() {

        const { activeGenre, onGenreChange, items, textProperty, valueProperty } = this.props;
        const genres = [];

        for (let n = 0; n < items.length; n++) {
            const genre = items[n][textProperty]
            genres.push(<ListGroup.Item onClick={() => {onGenreChange(genre)}} key={genre[valueProperty]} as="li" active={genre === activeGenre}>{genre}</ListGroup.Item>)
        }

        return (<React.Fragment>
            <ListGroup as="ul">
                <ListGroup.Item onClick={() => onGenreChange("All Genres")} as="li" active={"All Genres" === activeGenre}>All Genres</ListGroup.Item>
                {genres}
            </ListGroup>
        </React.Fragment>
        );
    }
}

标签: reactjsonclickevent-listener

解决方案


推荐阅读