1) Предопределенные функции, такие как componentDidMount, будут полностью работать, как и другие события жизненного цикла в React.
2) Да, это возможно, Redux отлично подходит для управления состоянием приложений и сохранения данных, которые будут использоваться внутри приложения для каждого экземпляра.
3) Вы должны использовать как React-Router, так и Express. Вы можете использовать React-Router для навигации по внешнему интерфейсу, навигации от страницы к странице. Для Express это особенно полезно для разработки маршрутов API для вашего бэкэнда, если это необходимо.