Как обрабатывать переменные во вложенных функциях в JavaScript - PullRequest
0 голосов
/ 12 ноября 2018

Когда вызывает функцию , как в моем случае " setState (...) ", которая имеет форму, где первый аргумент является функцией , яИнтересно, как передать локальную переменную в эту функцию.

Вот мой пример:

let myDate = new Date();

this.setState((myDate) => {
    return {
       date: myDate
   }
})

Как видите, я использую стрелка-нотация здесь.

Ответы [ 2 ]

0 голосов
/ 12 ноября 2018

Добавление параметра в ваш setState не нужно, просто вызовите переменную в вашем setState, и это сработает.

let myDate = new Date();

 this.setState(() => {
    return {
       date: myDate
   }
})
0 голосов
/ 12 ноября 2018

У вас есть две переменные с именем myDate.

  • Одна в более широкой области видимости, определенная в первой строке
  • Одна локальная по отношению к функции стрелки, определенной в ее аргументах в строкеthree

Второй маскирует первый.

Только не делайте этого, поэтому функция имеет доступ к тому, что находится в более широком контексте.

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