Material UI is a Material Design library made for React.
It’s a set of React components that have Material Design styles.
In this article, we’ll look at how to add radio buttons, dropdowns, and sliders with Material UI.
To show errors with radio buttons, we can pass in an error
prop to it.
For instance, we can write:
import React from "react";
import Radio from "@material-ui/core/Radio";
import FormControlLabel from "@material-ui/core/FormControlLabel";
import FormLabel from "@material-ui/core/FormLabel";
import FormControl from "@material-ui/core/FormControl";
import FormHelperText from "@material-ui/core/FormHelperText";
import Button from "@material-ui/core/Button";
import RadioGroup from "@material-ui/core/RadioGroup";
export default function App() {
const [value, setValue] = React.useState("");
const [error, setError] = React.useState(false);
const [helperText, setHelperText] = React.useState("");
const handleRadioChange = event => {
setValue(event.target.value);
setHelperText(" ");
setError(false);
};
const handleSubmit = event => {
event.preventDefault();
if (value === "2") {
setHelperText("right");
setError(false);
} else if (value === "3") {
setHelperText("wrong");
setError(true);
} else {
setHelperText("Please select an option.");
setError(true);
}
};
return (
<form onSubmit={handleSubmit}>
<FormControl component="fieldset" error={error}>
<FormLabel component="legend">What's 1 + 1?</FormLabel>
<RadioGroup name="quiz" value={value} onChange={handleRadioChange}>
<FormControlLabel value="2" control={<Radio />} label="2" />
<FormControlLabel value="3" control={<Radio />} label="3" />
</RadioGroup>
<FormHelperText>{helperText}</FormHelperText>
<Button type="submit" variant="outlined" color="primary">
Check Answer
</Button>
</FormControl>
</form>
);
}
#software-development #technology #javascript #programming #web-development