मैं अपने पहले बिट को 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*
लेकिन मैं सिर्फ यह काम करने की कोशिश कर रहा हूं।)
this
कोड में किस बिंदु पर लॉगिंग है ? से लॉग इन करने Searcher.handleUserInput()
या SearchFacet.handleChange()
कुछ करने की कोशिश नहीं कर रहा है।
this
जब आप पाठ फ़ील्ड इनपुट करते हैं तो लॉगिंग का प्रयास करें । यह हो सकता है किthis
नहीं हैSearcher
घटक अब और।