Function handleChange has input parameters with default values.
handleChange(required = false, test = false, event)
When I call this function, I want to pass some of the input parameters, but not all. For example,
handleChange(test = true, event)
However this gives an error saying "ReferenceError: test is not defined."
Here is my App.js file:
import React from 'react';
import PropTypes from 'prop-types';
import { withStyles } from '@material-ui/core/styles';
import TextField from '@material-ui/core/TextField';
const styles = theme => ({
container: {
display: 'flex',
flexWrap: 'wrap',
},
formControl: {
margin: theme.spacing.unit,
},
});
class MyForm extends React.Component {
state = {
name: "",
name_msg: ""
};
handleChange(required = false, test = false, event) {
if (required === true && event.target.value.length === 0) {
this.setState({ name_msg: "Required" });
}else{
this.setState({ name_msg: "" });
}
console.log(test);
this.setState({ name: event.target.value });
}
render() {
return (
<TextField
label="Name"
id="name"
helperText={this.state.name_msg}
value={this.state.name}
onChange={(e) => this.handleChange(test=true,e)}
/>
);
}
}
export default withStyles(styles)(MyForm);