и делаю SPA на react/redux. Все отлично, но хотел бы прояснить банальные вещи. Подскажите люди добрые:
1) Как у клиента обновлять приложение? Деплои идут часто, а в SPA нужно обновить страницу, чтобы изменения вступили в силу, что не гуд. Мне нужно, чтобы приложение ОБЯЗАТЕЛЬНО рефрешнулось на клиенте при деплое. Как вы поступаете? Контроль версии по вебсокетам? Есть ли готовые ноу-хау?
2) При первом подходе я использовал так называемую duck-структуру проекта, где в сторе на каждый scene был отдельный набор экшенов, редьюсеров и т.д. Там же в экшенах были редиректы. Т.е. при успешном добавлении комментария сделай редирект по react-router на страницу поста.
НО! Как я потом понял, теряется смысл редакса, я узнал в процессе больше про всякие селекторы и т.д. и как мне кажется duck-структура по философии это не к redux. Теперь вопрос: Какую структуру вы используете для больших приложений? Как работаете с редиректами в redux?
1. Подключите к проекту девопсов
по вебсокетам обновляем страницу
Смотря что у тебя для деплоя и развертывания. Если кубернетис, то там накатывается новая версия и пользователь даже не замечает, что приложение обновилось
Возможно, наведу на мысль. У нас в проекте подобной задачи не стоит, но...в целом, как я вижу, имеется весь набор условий и инструментов для подобной фичи. Проект полностью клиентский SPA. на базе бойлерплейта - https://github.com/react-boilerplate/react-boilerplate/tree/8407cf05c4f1d43ca6c78625b7b8fee7627fdedb/app Есть сервис-воркер, оффлайн-плагин и динамический роутинг...когда происходит апдейт исходников, при попытке перейти на другой роут, в консоли браузере можно увидеть "пойманный" эксепшн. Полагаю, что здесь можно обработать релоад и прочие необходимые действия.
Обсуждают сегодня