Будет ли линия сразу после действия синхронизации сразу замечать изменения? - PullRequest
0 голосов
/ 14 декабря 2018

Сказать, что при отправке действия синхронизации в блоке заметит ли изменение строка под ним?

// In a compoent connected to the reducer
class someComponent extends Component {

  const interuptOrNot = () => {
    this.props.dispatchChangeSomeStateAction({ payload: 2 })
  }

  render() {
    this.interuptOrNot()
    console.log(this.props.someState)
    return(<SomeComponent>)
  }

}

Если исходное значение подпорки от редуктора равно 1, какова выходная информация длярегистратор.1 или 2?Или нет вывода для первого вызова рендеринга, но он выдаст 2 для повторного рендеринга с самым новым состоянием.

Я знаю, что отправлять действие в функции рендеринга - плохая идея, но что произойдет, если яотправить некоторые действия, изменяющие состояние редуктора, используемого этим компонентом?

Что если dispatchChangeSomeStateAction отправляет редукторное действие синхронизации, и я вызываю эту функцию в функции рендеринга?Будет ли текущий рендеринг прерван, потому что состояние устарело?

1 Ответ

0 голосов
/ 14 декабря 2018
    console.log(this.props.someState)

вернет 1.

Текущая функция рендеринга будет работать с текущими значениями проп.

Когда состояние компонента изменится , оно будет рендериться.

Используйте componentWillReceiveProps для отслеживания новых / обновленных реквизитов.

Реквизиты являются неизменными , если что-то обновляет их, вы отслеживаете изменения в componentWillReceiveProps и передавать обновления в состояние этого компонента.

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