У меня в зависимости от изменений стецта в принципе всегда и рендерится.
Просто если стецт изменяется, добавляется новый объект, то должен добавиться новый какой то итем.
Но некоторые моменты есть, не связанные со стейтом. Например, по нажатию на кнопку показывается модальное окно с нужными данными, или выводится сообщение об ошибке, если поля не валидны
заводишь стейт isModalOpen - и отображаешь модалку, если оно true.
по нажатию на кнопку, соответственно, ставишь setModalOpen(true)