import { Cascader } from "rsuite";
import "rsuite/dist/rsuite.min.css";
import LocationIcon from "@rsuite/icons/Location";
function App() {
const countries = [
{
label: "India",
value: "India",
children: [
{
label: "Haryana",
value: "Haryana",
},
{
label: "Assam",
value: "Assam",
children: [
{
label: "Darrang",
value: "Darrang",
},
{
label: "Dhemaji",
value: "Dhemaji",
},
],
},
{
label: "West Bengal",
value: "West Bengal",
children: [
{
label: "Hooghly",
value: "Hooghly",
},
{
label: "Darjeeling",
value: "Darjeeling",
},
],
},
{
label: "Nagaland",
value: "Nagaland",
},
],
},
{
label: "Germany",
value: "Germany",
},
{
label: "Sri Lanka",
value: "Sri Lanka",
},
];
const name = ["Country", "State", "District"];
return (
<div className="App">
<h4> React Suite Cascader Custom options</h4>
<Cascader
data={countries}
style={{ marginLeft: 80, marginTop: 10 }}
renderMenuItem={(label) => {
return (
<div>
<em>{label}</em>
</div>
);
}}
renderValue={(value) => {
return (
<b>
<LocationIcon />
{value}
</b>
);
}}
renderMenu={(children, menu, parentNode, layer) => {
return (
<div>
<div
style={{
background: "green",
border: "2px solid #34382e",
padding: "4px",
color: "white",
textAlign: "center",
}}
>
{name[layer]}
</div>
{menu}
</div>
);
}}
/>
</div>
);
}
export default App;