मैं पालन करने के लिए एक बच्चे के घटक से डेटा भेजने की कोशिश कर रहा हूँ:
const ParentComponent = React.createClass({
getInitialState() {
return {
language: '',
};
},
handleLanguageCode: function(langValue) {
this.setState({language: langValue});
},
render() {
return (
<div className="col-sm-9" >
<SelectLanguage onSelectLanguage={this.handleLanguage}/>
</div>
);
});
और यहाँ बाल घटक है:
export const SelectLanguage = React.createClass({
getInitialState: function(){
return{
selectedCode: '',
selectedLanguage: '',
};
},
handleLangChange: function (e) {
var lang = this.state.selectedLanguage;
var code = this.state.selectedCode;
this.props.onSelectLanguage({selectedLanguage: lang});
this.props.onSelectLanguage({selectedCode: code});
},
render() {
var json = require("json!../languages.json");
var jsonArray = json.languages;
return (
<div >
<DropdownList ref='dropdown'
data={jsonArray}
value={this.state.selectedLanguage}
caseSensitive={false}
minLength={3}
filter='contains'
onChange={this.handleLangChange} />
</div>
);
}
});
मुझे मूल घटक में उपयोगकर्ता द्वारा चयनित मान प्राप्त करने की आवश्यकता है। मुझे यह त्रुटि मिल रही है:
Uncaught TypeError: this.props.onSelectLanguage is not a function
किसी को भी समस्या को खोजने में मेरी मदद कर सकते हैं?
PS बाल घटक एक json फ़ाइल से एक ड्रॉपडाउन बना रहा है, और मुझे एक दूसरे के बगल में json सरणी के दोनों तत्वों को दिखाने के लिए ड्रॉपडाउन सूची की आवश्यकता है (जैसे: "आआ, अंग्रेजी" पहली पसंद के रूप में!)
{
"languages":[
[
"aaa",
"english"
],
[
"aab",
"swedish"
],
}
handleLanguageCode: function(langValue) { this.setState({ language: langValue }).bind(this); },
लेकिन यह एक त्रुटि देता है:ncaught TypeError: Cannot read property 'bind' of undefined
createClass
गैर प्रतिक्रिया विधियों को ऑटोबाइंड करता है।
<SelectLanguage onSelectLanguage={this.handleLanguage*Code*}/>
एक लेखन त्रुटि।