Reputation: 11
i want to know how to call function with parameters in arrow function
this is my code
export default class App extends Component {
state = {
number: 1
};
change_number = (type) => {
if(type === minus){
this.setState({ number: this.state.number - 1 })
}else{
this.setState({ number: this.state.number + 1 })
}
};
render() {
return (
<View style={{ flexDirection: "row" }}>
<View style={styles.button}>
<Button onPress={() =>{this.change_number}} title={"-"} />
</View>
<Text style={styles.text}>{this.state.number}</Text>
<View style={styles.button}>
<Button onPress={this.change_number } title={"+"} />
</View>
</View>
);
}
}
there are two button - and +
i want to do button event in minus and plus
When I click on the function I want to determine whether it is a minus function or a plus function. Is there anyone you can help me with?
Upvotes: 1
Views: 6796
Reputation: 570
Yes you can. You just need to call change_number function with minus parameter
change_number = (type) => {
if(type === 'minus'){
this.setState({ number: this.state.number - 1 })
}else{
this.setState({ number: this.state.number + 1 })
}
};
render() {
return (
<View style={{ flexDirection: "row" }}>
<View style={styles.button}>
<Button onPress={() =>{this.change_number('minus')}} title={"-"} />
</View>
<Text style={styles.text}>{this.state.number}</Text>
<View style={styles.button}>
<Button onPress={this.change_number } title={"+"} />
</View>
</View>
);
}
}
Upvotes: 2