मेरे पास जो समस्या है, वह पहली बार टेक्स्ट दर्ज करने के बाद है, फिर मैं जोड़ें क्लिक करें और इनपुट टेक्स्ट बॉक्स साफ़ हो जाता है। हालांकि जब मैं फिर से टेक्स्ट दर्ज करना शुरू करता हूं, तो इनपुट टेक्स्ट मुझे पहले अक्षर से अलग टेक्स्ट नहीं दे पाएगा। मुझे यकीन नहीं है कि यह क्यों कर रहा है।क्लिक ईवेंट के बाद साफ़ इनपुट टेक्स्ट
var FormTextBox = React.createClass({
handleOnBlur: function (e) {
this.props.onBlur(e.target.value);
},
render: function() {
return (
<input value={this.props.value} key={this.props.fid} type="text" onBlur={this.handleOnBlur} />
)
}
});
var TestFormTextBox = React.createClass({
getInitialState: function (e) {
return {
value: ''
}
},
handleOnAdd: function (e) {
this.setState({ value: '' });
},
handleTextInfo: function (value) {
this.setState({ value: value });
},
render: function() {
return (
<div>
<table>
<tbody>
<tr>
<td>Details</td>
<td></td>
</tr>
<tr>
<td><FormTextBox value={this.state.value} fid={1} onBlur={this.handleTextInfo} /></td>
<td><button onClick={this.handleOnAdd}>Add</button></td>
</tr>
</tbody>
</table>
</div>
)
}
});
वहाँ वैसे भी DefaultValue विधि का उपयोग करने है? प्रत्येक चरित्र हिट के बाद राज्य को अद्यतन करना कुछ हद तक अप्रचलित लगता है। मैंने ब्लर पर उपयोग किया ताकि टेक्स्टबॉक्स से बाहर निकलने के बाद यह केवल राज्य को अपडेट कर सके। – fes
चिंता न करें, यही तरीका है कि रिएक्ट बनाया गया है, यह इस तरह से किया जाता है ताकि आपके यूआई की स्थिति हमेशा आपके यूआई मॉडल की स्थिति से मेल खाती रहे और यह वास्तव में काफी तेज़ है कि यूआई परिवर्तनों को कैसे नियंत्रित करता है ! ऐसा कहा जा रहा है कि आप 'मूल्य' के हर परिवर्तन पर नेटवर्क अनुरोध कर रहे हैं? यदि ऐसा है तो इसे और अधिक कुशल बनाने के अन्य तरीके हैं। –