Skip welcome & menu and move to editor
Welcome to JS Bin
Load cached copy from
 
<!DOCTYPE HTML>
<body>
<script src="https://fb.me/react-with-addons-0.14.7.min.js"></script>
<script src="https://fb.me/react-dom-0.14.7.min.js"></script>
<script src="https://npmcdn.com/mobx@2.4.2/lib/mobx.umd.js"></script>
<script src="https://npmcdn.com/mobx-react@3.0.0/index.js"></script>
  <div id="mount" />
</body>
 
button, li { cursor: pointer }
.selected {
  color: red;
}
 
const {observable, computed} = mobx;
const {observer} = mobxReact;
const {Component} = React;
@observer
class Form extends React.Component{
    @observable username = '';
    @observable password = '';
    constructor(props) {
        super(props);
        this.handleSubmit = this.handleSubmit.bind(this)
    }
    render() {
        return <form onSubmit={this.handleSubmit}>
            <label>
                Name:
                <input type="text" value={this.username} onChange={event => this.username = event.target.value} />
            </label>
            <div>username: {this.username}</div>
            <input type="submit" value="Submit" />
        </form>;
    }
    handleSubmit(event: Event) {
        event.preventDefault();
        console.log(this.username, this.password);
    }
}
ReactDOM.render(
    <div>
        <Form />
    </div>
, document.getElementById('mount'));
Output

This bin was created anonymously and its free preview time has expired (learn why). — Get a free unrestricted account

Dismiss x
public
Bin info
anonymouspro
0viewers