Как мы можем управлять глобальным состоянием реагирующего приложения, используя хуки, не используя приставку? - PullRequest
1 голос
/ 11 октября 2019

Я использовал избыточность для всех своих реактивных проектов, чтобы поддерживать глобальное состояние приложения. Я читал, что мы можем управлять глобальным состоянием приложения, используя также ловушки без необходимости в избыточности, но я не могу понять, как его использовать. Любая помощь или пример для этого были бы очень полезны.

Ответы [ 2 ]

1 голос
/ 11 октября 2019

Если вы хотите заменить Redux на ReactHooks, вы можете следовать этому уроку: Ссылка

Do React Hooks Replace Redux? TL; DR: крючки - это замечательно, но нет.

С тех пор как API React-хуков был представлен, возникло много вопросов о том,Перехваты not React заменят Redux.

На мой взгляд, между ReactHooks и Redux есть небольшое совпадение. Крючки не дали нам новых волшебных возможностей. Вместо этого он улучшил API для вещей, которые мы могли бы уже сделать с React.

Чтобы понять, что такое , что такое избыточный код? , , что такое ловушки реагирования? , почему мы можем рассмотреть Redux в первую очередь? , посетите Здесь

1 голос
/ 11 октября 2019

Hooks - это функциональный способ программирования, позволяющий избавиться от классов в реагировании. Однако вы можете посмотреть на React Context API . Это позволяет глобальное управление состоянием реагировать.

Обратите внимание, что Recat Context не является заменой для Redux. Они оба дополняют друг друга, где приставка также использует этот контекст.

const UserContext = React.createContext(null) ; // значение по умолчанию

значение, как только вы его получите, вы можете хранить любой объект или функции внутри. Таким образом, в корне или приложении создайте нормальное глобальное состояние.

const [user, setUser] = useState() <UserContext.Provider value={{user, setUser}}> <ComponentA /> <UserContext.Provider>

Теперь пользователь и путь к пользователю управляются глобально на протяжении всего приложения.

Теперь вы можете использовать const {user, setUser} = useContext(UserContext).

Когда вы вызываете setUser, вы теперь обновляете глобальное состояние. Читайте дальше, чтобы знать, когда использовать. https://reactjs.org/docs/context.html#before-you-use-context

...