2016-01-31 32 views
6

Şu anda bu basit tepki uygulamasına sahibim ve bu değiş tokuş olaylarını benim için ateş edemiyorum. Ben onChange={this.changeTitle (this)}, olay yangınları kullanan ancak changeTitle işlevinde ev değişken doğru bir değilkenReact input onChange tetiklenmiyor

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> 

    ); 
    } 
}); 

Komik şeydir.

+0

[benim için Works] (http://jsfiddle.net/dx8mq8dj/2/) . – Mathletics

+0

nasıl kurduğunuzu sorabilir miyim, bunun işe yaradığını biliyordum. – Cekaleek

+0

Kodunuzu tam olarak bağlı kemanın içine kopyaladım, http://jsfiddle.net/dx8mq8dj/2/ – Mathletics

cevap

6

Dene:

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

ya:

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

yerine:

onChange={this.changeTitle} 
+0

onChange = {(evt) => props.onChangeDate (evt)} bu paradigmayı kullanarak: https://facebook.github.io/flux/docs/flux-utils.html –

+3

İşlev doğru bir şekilde bağlıysa ... neden Bunların hepsi işe yaramaz mı? –

+0

Lütfen neden en üstte çalıştığını ve alt tarafın neden – Mazzy