Я пытаюсь перенаправить пользователя в собственное приложение, установив window.location в пользовательский URI, поэтому, если у пользователя установлено приложение, он откроет эту страницу в приложении.
Компонент входа:
componentDidMount() {
const { match: { params: { domain } } } = this.props
if (domain) this.setState({ domain })
if (typeof window !== 'undefined') {
window.location = `clickclock://login/potato`
}
}
рендеринг через маршрутизатор реакции:
<Route path="/login/:domain?" render={props => status ? redirect("/") : <LoginPanel {...props} onLogin={onLogin} />} />
Проблема в том, что перенаправление работает при нажатии этой кнопки, которая выдвигает историю, чтобы показать компонент входа:
<Button text="Login" onClick={() => { history.push('/login') }} />
но он не работает при загрузке или перезагрузке страницы непосредственно по этому пути.