На тот момент я считал, что глобальное состояние должно передаваться через контекст React, чтобы оно работало с параллельным режимом React. Итак, я составил сравнительную таблицу, чтобы отличить свою библиотеку от других, и Зустанд был одним из них. Это было в 2019 году.
В 2020 году я присоединился к группе Poimandres и взял на себя разработку Zustand. В то время моим интересом было заставить глобальные библиотеки состояний работать с параллельным режимом React. Невозможно было получить все преимущества от параллельного режима, но существовал экспериментальный API под названием useMutableSource, который делал глобальное состояние совместимым с параллельным режимом.
Я экспериментировал со многими вещами, используя решение на основе контекста React с React-Tracked, и задавался вопросом, что мы могли бы сделать с глобальным состоянием без контекста React. Зюстанду исполнился год, но его никто не поддерживал. Итак, я решил взять это на себя.
Экспериментальный API useMutableSource не был готов, поэтому первой задачей было обновить различные вещи и исправить некоторые ошибки. Именно тогда родился Zustand v3. Я надеялся вскоре выпустить v4 с useMutableSource, но этого не произошло. За этим стоит еще одна история.
В настоящее время хорошо известен шаблон, когда глобальное состояние находится снаружи и при необходимости используется контекст React для передачи его хранилища. Зустанд был пионером в этом направлении. Люди очень скептически относились к отсутствию глобального состояния в React Context, и нам было трудно объяснить, что это действительный шаблон.
Одна из вещей, которые меня волнуют в Zustand, — это простота реализации и небольшой размер пакета. Если вы посмотрите исходный код, вы увидите, что это не что иное, как просто использование перехватчиков React с минимальной реализацией хранилища.
На момент написания Zustand v4 — это последняя версия с очень продвинутой поддержкой TypeScript, а код почти полностью переписан из v3. У нас есть Zustand v5, почти готовый к следующему выпуску.
И последнее, но не менее важное: этот проект поддерживают несколько участников. Я не ожидал, что такое произойдет, когда взял на себя управление проектом. Я очень благодарен за это. Всем спасибо.
","image":"http://www.luping.net/uploads/20240730/172233792466a8ca84b1d78.jpg","datePublished":"2024-07-30T19:12:03+08:00","dateModified":"2024-07-30T19:12:03+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}В этом посте я хотел бы поделиться историей развития Zustand. Если быть точным, я не был первоначальным автором Zustand, и когда родился Zustand v0, я разрабатывал другие глобальные государственные библиотеки, особенно React-Tracked. Кстати, я теперь считаю себя (второстепенным) автором Зустанда.
Я нашел свой твит, в котором упоминается Zustand и сравнивается с другими библиотеками, включая мою.
На тот момент я считал, что глобальное состояние должно передаваться через контекст React, чтобы оно работало с параллельным режимом React. Итак, я составил сравнительную таблицу, чтобы отличить свою библиотеку от других, и Зустанд был одним из них. Это было в 2019 году.
В 2020 году я присоединился к группе Poimandres и взял на себя разработку Zustand. В то время моим интересом было заставить глобальные библиотеки состояний работать с параллельным режимом React. Невозможно было получить все преимущества от параллельного режима, но существовал экспериментальный API под названием useMutableSource, который делал глобальное состояние совместимым с параллельным режимом.
Я экспериментировал со многими вещами, используя решение на основе контекста React с React-Tracked, и задавался вопросом, что мы могли бы сделать с глобальным состоянием без контекста React. Зюстанду исполнился год, но его никто не поддерживал. Итак, я решил взять это на себя.
Экспериментальный API useMutableSource не был готов, поэтому первой задачей было обновить различные вещи и исправить некоторые ошибки. Именно тогда родился Zustand v3. Я надеялся вскоре выпустить v4 с useMutableSource, но этого не произошло. За этим стоит еще одна история.
В настоящее время хорошо известен шаблон, когда глобальное состояние находится снаружи и при необходимости используется контекст React для передачи его хранилища. Зустанд был пионером в этом направлении. Люди очень скептически относились к отсутствию глобального состояния в React Context, и нам было трудно объяснить, что это действительный шаблон.
Одна из вещей, которые меня волнуют в Zustand, — это простота реализации и небольшой размер пакета. Если вы посмотрите исходный код, вы увидите, что это не что иное, как просто использование перехватчиков React с минимальной реализацией хранилища.
На момент написания Zustand v4 — это последняя версия с очень продвинутой поддержкой TypeScript, а код почти полностью переписан из v3. У нас есть Zustand v5, почти готовый к следующему выпуску.
И последнее, но не менее важное: этот проект поддерживают несколько участников. Я не ожидал, что такое произойдет, когда взял на себя управление проектом. Я очень благодарен за это. Всем спасибо.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3