Способ реагирования:
, если вы хотите сделать это самостоятельно, без редуксов, вам нужно создать состояние shouldToggled
и функцию для управления им в родительском компоненте (App.js
).).затем вам нужно передать функцию вашему компоненту гамбургера и передать состояние другому компоненту, а в вашем компоненте гамбургера вам нужно использовать функцию, чтобы изменить состояние в вашем App.js
компоненте, и таким образом ваше родительское состояние будет обновлено и будетвызвать повторное рендерингэто называется техникой поднятия состояния, и вы можете увидеть ее в реактивной документации для получения дополнительной информации.
Путь Redux:
Редукционный путь немного сложен.Таким образом, у вас есть два варианта, в зависимости от сложности отношений родитель / потомок вашего компонента и от того, сколько уровней у вашего ребенка (который в вашем случае составляет всего один уровень), так же, как вы реагируете, когда вам нужно иметь состояние на redux store для управления переключенным состоянием ваших компонентов, и вам также нужно иметь создателя действий, чтобы вызвать это изменение состояния.затем в вашем компоненте гамбургера вам нужно вызвать этого создателя действия, чтобы отправить действие редуктору, чтобы изменить хранилище, после того как хранилище будет изменено неизменным образом, все хранилище редуксов будет обновлено и немедленно предоставлено всему вашему приложению, иВ конечном итоге, вызовет повторный рендеринг вашего компонента.
Наконец:
убедитесь, что вы используете избыточный способ только в сложной ситуации, так как в такой ситуации вы найдете ее полезной, а не простойслучаи, как ваша текущая проблема.и мой совет для вас может быть следующим: придерживайтесь метода поднятия реактивного состояния для вашей текущей проблемы, потому что в вашем случае он требует гораздо меньше кода котельной пластины.