काम नहीं कर रहा मैं निम्नलिखित है घटक प्रतिक्रिया: जैसा कि आप देख सकते हैं, मैं जब भी फ़ॉर्म सबमिट किया जाता handleSubmit
समारोह के नाम से जाना चाहते हैंप्रतिक्रिया प्रपत्र घटक ऑनसबमिट हैंडलर
class Form extends React.Component {
handleSubmit(e) {
e.preventDefault();
let loginInput = ReactDOM.findDOMNode(this.refs.login);
// change Main component's state
this.props.addCard(loginInput.value);
// reset the form
loginInput.value = '';
}
render() {
return(
<form onSubmit={this.handleSubmit}>
<input placeholder="githug login" ref="login" />
<button>Add Login</button>
</form>
);
}
}
। मैंने यह कार्य onSubmit
हैंडलर में जोड़कर इंगित किया है।
फ़ंक्शन सही समय पर लागू किया जा रहा है। हालांकि, उस फ़ंक्शन के भीतर this
का मान null
है। यह मेरे लिए आश्चर्यजनक है, क्योंकि मुझे प्रतिक्रिया घटक होने के लिए this
का मान अपेक्षित था। तथ्य यह है कि this
शून्य है मेरे लिए आश्चर्यजनक है, क्योंकि मैं official React documentation द्वारा सुझाए गए एक बहुत ही समान तर्क/कोड का उपयोग कर रहा हूं।
मैं यह पता लगाने में सहायता की सराहना करता हूं कि क्यों this
प्रतिक्रिया घटक नहीं है, जैसा कि अपेक्षित है, और कोड को कैसे ठीक किया जाए।
http://www.newmediacampaigns.com/blog/refactoring-react-components-to-es6-classes --- चरण # 3 या https://facebook.github.io/react/blog/ देखें 2015/01/27/प्रतिक्रिया-v0.13.0-beta-1.html # autobinding या http://egorsmirnov.me/2015/08/16/react-and-es6-part3.html – zerkms