Передача реквизита компонента и использование внутри футляра Swith - PullRequest
0 голосов
/ 17 сентября 2018

Я пытался передать реквизит (у меня есть NavigationItem, и там у меня есть свойство "ключ") и использовать этот ключ в качестве параметра внутри переключателя в кассете, но он просто дает мне "Не определено" Обратная связь.Итак, вот код компонента:

<div className={classes.espacamento}  id="playstation">
                        <NavigationItem key={"playstation"} link="/produtos">
                            Playstation
                    </NavigationItem>
                    </div>

                    <div className={classes.espacamento}  id="xbox">
                        <NavigationItem key={"xbox"} link="/produtos">
                            Xbox
                    </NavigationItem>
                    </div>

Я экспортирую как "navigationItens", но это просто не будет работать

import NavigationItens from '../../components/Navigation/Navbar/NavigationItens';

class Produtos extends Component {
    loadProdutosHandler() {
        if (!this.props.produtos) {
        switch(this.props.navigationItens.key) {
            case 'PS4':
                developmentServer.get('jogos')
                    .then(response => {
                        this.props.updateProdutosHandler(response.data.data);
                    });

                console.log("xbox")
                break;

            case 'playstation':
                developmentServer.get('jogos?plataforma=PS4')
                    .then(response => {
                        this.props.updateProdutosHandler(response.data.data);
                    });
                break;

            default:
             developmentServer.get('jogos?plataforma=PS4')
            .then(response => {
                this.props.updateProdutosHandler(response.data.data);
            });
                }
            }
    }

Может кто-нибудь помочь мне в этом?Я новичок в реакции и сейчас я очень растерялся, ха-ха

1 Ответ

0 голосов
/ 17 сентября 2018

key имеет особое значение в реакции, поэтому при попытке передать его в качестве реквизита компонент не увидит его (см .: https://reactjs.org/docs/lists-and-keys.html) Из документации -

Если вам нужно такое же значение в вашем компоненте, передайте его явно как реквизит с другим именем

...