Как я могу отобразить дочерний компонент или параллельный компонент, когда состояние установлено в ReactJS?

Вы можете достичь статической функциональности в Kotlin с помощью Companion Objects

  • Добавление компаньона к объявлению объекта позволяет добавлять статические функции к объекту, даже если фактическая статическая концепция не существует в Котлине ,
  • Сопутствующий объект также может обращаться ко всем членам класса, включая частные конструкторы.
  • Объект-компаньон инициализируется при создании экземпляра класса.
  • Объект-компаньон не может быть объявлен вне класса.
    class MyClass{
    
        companion object {
    
            val staticField = "This is an example of static field Object Decleration"
    
            fun getStaticFunction(): String {
                return "This is example of static function for Object Decleration"
            }
    
        }
    }
    

Члены сопутствующего объекта можно вызвать, просто используя имя класса в качестве определителя:

Выход:

MyClass.staticField // This is an example of static field Object Decleration

MyClass.getStaticFunction() : // This is an example of static function for Object Decleration
0
задан Hareesh 28 March 2019 в 05:59
поделиться

2 ответа

Похоже, что вы неверно истолковываете результаты консоли, вы обнаружили edited value.. в setState callback, который запускается после обновления компонента из-за изменения состояния.

Если вы действительно посмотрите на componentWillReceiveProps и componentDidUpdate childComponent и зарегистрируете реквизиты в этом жизненном цикле или, по сути, в методе рендеринга, вы действительно сможете увидеть обновленное значение, которое вы установили в состоянии.

Вы должны думать о setState callback как о lifecycle, который запускается после обновления компонентов, аналогично componentDidUpdate и componentDidUpdate родительского элемента, чаще всего запускается после componentDidUpdate дочерних компонентов

0
ответ дан Shubham Khatri 28 March 2019 в 05:59
поделиться

Привет, я проверил твой код, и он работает так, как ты ожидал.

Вот вам песочница: https://codesandbox.io/s/7yry1onrq6

Чтобы увидеть изменения после нажатия TextComponent, просто используйте [ 112] реквизит в AreaComponent.

Это пример, отражающий ваш код:

class AreaComponent extends React.Component {
  componentDidUpdate() {
    console.log("update - component");
  }

  componentWillReceiveProps(nextProps) {
    console.log("receive - component");
  }
  render() {
    return <p>{this.props.editedValue}</p>;
  }
}

В приведенном выше примере editedValue корректно меняется после нажатия.

0
ответ дан Jaaqo 28 March 2019 в 05:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: