Я хотел бы добавить реактивный маршрутизатор. Ссылка на событие для нажатия клавиши в форме, которую я создаю. Сама форма выглядит следующим образом:Добавление ссылки на событие для нажатия клавиши
<div className="col-md-6 col-md-offset-3" onKeyPress={e => this._handleKeyPress(e)}>
<Paper style={styles.form}>
<form role="form">
<div className="text-center">
<h2>Enter Your Details to Login</h2>
<div className="col-md-12">
<TextField
hintText="Email"
floatingLabelText="Email"
type="email"
errorText={this.state.email_error_text}
onChange={e => this.changeValue(e, 'email')}
onBlur={this.isDisabled}
/>
</div>
<div className="col-md-12">
<TextField
hintText="Password"
floatingLabelText="Password"
type="password"
errorText={this.state.password_error_text}
onChange={e => this.changeValue(e, 'password')}
onBlur={this.isDisabled}
/>
</div>
<FlatButton
containerElement={<Link to="/portal" />}
disabled={this.state.disabled}
style={{"marginTop": 50}}
label="Submit"
onClick={e => this.login(e)}
/>
</div>
</form>
</Paper>
</div>
Как вы можете видеть, что я делаю кнопку материал-щ ссылку на следующую страницу. Тем не менее, я также хотел бы сделать что-то подобное при нажатии клавиши ввода для отправки формы. На данный момент у меня есть это, чтобы справиться с ключевым событием и логин:
_handleKeyPress(e) {
if (e.key === 'Enter') {
if (!this.state.disabled) {
this.login(e);
}
}
}
login(e) {
createUser(this.state.email, this.state.password);
}
Но, как вы можете видеть, что нет перехода происходит в ключевой пресс-функции.
Мой вопрос в том, как я могу добавить это к событию нажатия клавиши, чтобы он также вызвал переход на следующую страницу?
Любая помощь будет очень оценена, как всегда.
Спасибо за ваше время
Вы пытались добавить маршрутизатор в свой контекст компонента и использовать this.context.router.push ('yourpath')? – QoP
Как бы я это делал, я только начинаю использовать реактивный маршрутизатор, поэтому я немного смущен тем, что вы подразумеваете под этим. – BeeNag