वांछित व्यवहार ऑनक्लिक हैंडलर को console.log पर एक तर्क (पाठ) पास करना है, लेकिन इसे लगता है कि मैं वाक्यविन्यास के साथ कुछ गलत कर रहा हूं।प्रतिक्रिया-मूल पर एक तर्क के साथ बाध्यकारी
अगर मैं जैसा कि नीचे तर्क छोड़ देते हैं, यह ठीक काम कर रहा है:
export default class Nav extends Component {
componentDidMount() {
this.props.pickNumber(3);
}
onPress() {
console.log('FOOOBAAR');
}
render() {
return (
<View>
<Text>####################</Text>
<Text>Intro Screen</Text>
<Text>Number: {this.props.numbers}</Text>
<TouchableHighlight onPress={this.onPress.bind(this)}>
<Text>Go to Foo</Text>
</TouchableHighlight>
</View>
);
}
}
हालांकि, अगर मैं onPress हैंडलर के लिए एक तर्क के पास करना चाहते हैं, यह शिकायत अपरिभाषित का बाँध '' संपत्ति पढ़ा नहीं जा सकता '।
export default class Nav extends Component {
componentDidMount() {
this.props.pickNumber(3);
}
onPress(txt) {
console.log(txt);
}
render() {
return (
<View>
<Text>####################</Text>
<Text>Intro Screen</Text>
<Text>Number: {this.props.numbers}</Text>
<TouchableHighlight onPress={this.onPress('foo').bind(this)}>
<Text>Go to Foo</Text>
</TouchableHighlight>
</View>
);
}
}
धन्यवाद
अलावा:
onPress={this.onPress.bind('foo')}
यह या तो काम नहीं करता: मैं के लिए इसे बदल सकते हैं।
यह त्रुटि निकाल देता है लेकिन 'foo' स्ट्रिंग के बिना मुझे और भी क्लिक करने के लिए स्वचालित रूप console.logged हो जाता है। – Wasteland
क्षमा करें, मैंने अपना जवाब अपडेट कर दिया है। इससे पहले आपको() => जोड़ना होगा। ऑनप्रेस ('foo')। – inga
यही वह है। धन्यवाद। क्या आप समझाने में सक्षम होंगे कि मुझे उस पर एक वसा तीर फ़ंक्शन जोड़ने की आवश्यकता क्यों है? धन्यवाद – Wasteland