Передайте результат функции (возврат) как опору в ReactJS - PullRequest
0 голосов
/ 09 февраля 2020

В моем приложении я пытаюсь передать результат number() в качестве параметра внутри ссылки. Однако, похоже, что он пытается буквально передать всю функцию (необработанный текст функции), а не результат (что действительно глупо и не имеет никакого смысла). Что мне не хватает? Есть ли лучший способ сделать то, к чему я стремлюсь? Спасибо!

КОД

function number() {
    return 0;
}

<Link to={{pathname: '/path', state: {number: number}}}>Go</Link>

1 Ответ

0 голосов
/ 09 февраля 2020

Если вы хотите передать значение функции, вы должны сделать следующее:

<Link to={{pathname: '/path', state: {number: number()}}}>Go</Link>

Редактировать :

Я смог сделать это следующим образом Я сказал раньше. Но в целевом компоненте ссылки state находится внутри props.location. Например, если Link отправляет следующий компонент Path, вам необходимо определить аргумент props в компоненте и получить доступ к props.location.state.number следующим образом:

const Path = (props) => (
  <div>
    {props.location.state.number}
  </div>
)

Вы можете просмотреть пример, работающий по этой ссылке : https://codesandbox.io/s/a-simple-react-router-v4tutorial-9s3f6?fontsize=14&hidenavigation=1&theme=dark

...