Вот есть еще одно обьяснение почему реакт не реактивный. Реакцию обеспечивает любой ивент эмиттер. Реактивное программирование вообще не про реакции и уж тем более не про рендеринг шаблонов, а про гранулированное распространение изменений. Подход вида "при вызове метода создаём новыи мир и сравниваем его с текущим" — резко противоположен реактивному программированию.
рендерер по своей готовности забирает ченджи из очереди, которые реакт туда напихивает, т.е. может быть нагенерировано больше событий, но рендерер заберет не все, это нарушает какой-то из принципов реактивного манифеста, я не мастер объяснений ))
У нас просто есть cmsка, где контент-автора заполняют контент. И у нас вечные проблемы с тем, что они либо где-то не укажут поле, либо не тот тип используют. И из-за этого у нас миллион проверок на клиенте, которые уже никто не помнит за что отвечают
зависит от того, что вы будете делать с результатом если вам просто провалидировать и кинуть ошибку, то можно и какую-нибудь либу для валидации взять А если в проекте есть типизация и ожидается какой-то конкретный тип на выходе, то лучше runtypes и его аналоги