Skip to content

Instantly share code, notes, and snippets.

@mkozhukharenko
Created October 30, 2016 16:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mkozhukharenko/986132c9a35a87268bf05659cced77a1 to your computer and use it in GitHub Desktop.
Save mkozhukharenko/986132c9a35a87268bf05659cced77a1 to your computer and use it in GitHub Desktop.
import React, { Component, PropTypes } from 'react';
import FormInput from './../common/form-input'
import { observer } from 'mobx-react'
@observer
class LoginForm extends Component {
render() {
const {form, onChange} = this.props;
return (
<form onSubmit={this.submit}>
<h3>Login</h3>
<FormInput type="email"
name="email"
value={form.fields.email.value}
error={form.fields.email.error}
onChange={onChange}
placeholder="email"/>
<FormInput type="password"
name="password"
value={form.fields.password.value}
error={form.fields.password.error}
onChange={onChange}
placeholder="password"/>
{form.meta.error && <div> {form.meta.error} </div>}
<input disabled={!form.meta.isValid}
value="Continue"
type="submit"/>
</form>
)
}
submit = (event) => {
event.preventDefault();
this.props.onSubmit()
}
}
LoginForm.propTypes = {
onChange: PropTypes.func.isRequired,
onSubmit: PropTypes.func.isRequired,
form: PropTypes.shape({
fields: Object,
meta: Object
}).isRequired
};
export default LoginForm
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment