tutorial react instalar hello example español ejemplos javascript reactjs react-jsx

javascript - react - Reaccionar entrada enChange no disparará



react js init (1)

Tratar:

onChange={(evt) => this.changeTitle(evt)}

o:

onChange={this.changeTitle.bind(this)}

en lugar de:

onChange={this.changeTitle}

Actualmente tengo esta aplicación de reacción simple y no puedo hacer que estos eventos de cambio se disparen por mi vida.

var BlogForm = React.createClass({ getInitialState: function() { return { title: '''', content: '''' }; }, changeTitle: function(event) { var text = event.target.value; console.log(text); this.setState({ title: event.target.value }); }, changeContent: function(event) { this.setState({ content: event.target.value }); }, addBlog: function(ev) { console.log("hit hit"); }, render: function() { return ( <form onSubmit={this.addBlog(this)}> <div> <label htmlFor=''picure''>Picture</label> <div><input type=''file'' id=''picture'' value={this.state.picture} /></div> </div> <div> <input className="form-control" type=''text'' id=''content'' value={this.state.title} onChange={this.changeTitle} placeholder=''Title'' /> </div> <div> <input className="form-control" type=''text'' id=''content'' value={this.state.content} onChange={this.changeContent} placeholder=''Content'' /> </div> <div> <button className="btn btn-default">Add Blog</button> </div> </form> ); } });

Lo curioso es cuando uso onChange={this.changeTitle (this)} , el evento se dispara pero la variable ev en la función changeTitle no es la correcta.