У меня есть приложение реагирования, использующее NextJS, и я реализовал этот HOC для аутентификации с помощью firebase:
// Assume auth is defined, and set to firebase.auth()
export default Component => class extends React.Component {
state = { userId: null }
componentDidMount() {
auth.onAuthStateChanged(user => {
if (!authUser) { Router.push('/login') }
else { this.setState({ userId: auth.currentUser.uid}) }
})
}
render() {
return this.state.userId ?
<Component {...this.props} userId={this.state.userId} />
: <div>loading</div>
}
}
Это работает хорошо, но я хотел бы воспользоваться преимуществами SSR и избежать loading
часть.Мое понимание NextJS было то, что это будет выполнено на сервере, и, таким образом, страница будет предварительно заполнена.Instated, я вижу раздел «Загрузка» около секунды, а затем фактическую страницу с правильным состоянием загрузки.
Как я могу заставить это быть обработанным сервером?
Спасибо :)