मैं React.js का अपना पहला बिट आजमा रहा हूं और जल्दी से स्टंप हो गया हूं ... मेरे पास नीचे कोड है, जो <div id="search"></div>
में एक खोज फ़ॉर्म प्रस्तुत करता है। लेकिन खोज बॉक्स में टाइपिंग कुछ भी नहीं करता है।प्रतिक्रिया इनपुट टेक्स्ट फ़ील्ड में टाइप नहीं कर सकते
संभावित रूप से प्रोप और राज्य ऊपर और नीचे गुम होने में कुछ गुम हो रहा है, और यह एक आम समस्या की तरह लगता है। लेकिन मैं फंस गया हूँ - मैं नहीं देख सकता कि क्या गुम है।
var SearchFacet = React.createClass({
handleChange: function() {
this.props.onUserInput(
this.refs.searchStringInput.value
)
},
render: function() {
return (
<div>
Search for:
<input
type="text"
value={this.props.searchString}
ref="searchStringInput"
onchange={this.handleChange} />
</div>
);
}
});
var SearchTool = React.createClass({
render: function() {
return (
<form>
<SearchFacet
searchString={this.props.searchString}
onUserInput={this.props.onUserInput}
/>
<button>Search</button>
</form>
);
}
});
var Searcher = React.createClass({
getInitialState: function() {
return {
searchString: ''
}
},
handleUserInput: function(searchString) {
this.setState({
searchString: searchString
})
},
render: function() {
return (
<div>
<SearchTool
searchString={this.state.searchString}
onUserInput={this.handleUserInput}
/>
</div>
);
}
});
ReactDOM.render(
<Searcher />,
document.getElementById('searcher')
);
(अंततः मैं SearchFacet*
के अन्य प्रकार होगा, लेकिन मैं सिर्फ इस एक काम कर पाने के कोशिश कर रहा हूँ।)
टेक्स्ट फ़ील्ड इनपुट करते समय 'यह' लॉगिंग करने का प्रयास करें। यह हो सकता है कि 'यह' अब 'खोजकर्ता' घटक नहीं है। – FaureHu
धन्यवाद FaureHu - कोड में किस बिंदु पर 'यह' लॉगिंग? 'Searcher.handleUserInput()' या 'SearchFacet.handleChange()' से लॉग इन करने का प्रयास कुछ भी नहीं करता है। –
आप समान प्रश्नों के लिए मेरा उत्तर देख सकते हैं। आप विस्तृत स्पष्टीकरण पा सकते हैं: http://stackoverflow.com/questions/34713718/input-field-doesnt-receive-keyboard-events-when-rendering-with-value-property/36871399?noredirect=1#comment61310144_36871399 –