ReactJS material-ui 'TypeError: onSelect не является функцией' tabHandler - PullRequest
0 голосов
/ 28 мая 2020

Добрый день. Я ожидаю странной ошибки при попытке изменить вкладки. Код в порядке. Что мне не хватает? Дело в том, чтобы переключать вкладки в зависимости от того, что нажимает пользователь. Протестировано с console.log, возвращает правильное значение и вызывает это исключение.

Приложение. js

export default class extends React.Component {
    constructor(props) {
        super(props);
        this.state = {
            exerciseList: exercises,
            // category: 'chest'
        };
        // this.onSelect = this.onSelect.bind(this)
    }

    onSelect = category => {
      this.setState({
          // console.log(category);
          category
      })
    };


    render() {
        const exercises = this.getExercisesByMuscles(),
            { category } = this.state;
        return (
            <Fragment>


                <Footer
                    category={category}
                    muscles={muscles}
                    onChange={this.onSelect}
                />

            </Fragment>


        );
    }
}

Нижний колонтитул. js

export default ({ muscles, category , onSelect }) => {
    const index = category ? muscles.findIndex(group => group === category) + 1
        : 0;


    return (
        <Paper >
            <Tabs
                value={index}
                onChange={(e, index) => {
                    onSelect(index === 0 ? '' : muscles[index] )
                }}
                indicatorColor="primary"
                textColor="primary"
                centered
            >
                <Tab label="All"/>
                {muscles.map(group =>
                    <Tab label={group}/>
                )}
            </Tabs>
        </Paper>
    )
}

Ошибка при переключении вкладок. Ошибка указывает на функцию onChange.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...