민프
[React][TypeScript][MUI] Slider 커스텀을 해보자 본문
아래 공식문서와 예시 링크를 참고하였다
https://codesandbox.io/s/lym08b?file=/demo.tsx
https://mui.com/material-ui/react-slider/
const marks = [
{
value: 0,
label: "0%",
},
{
value: 25,
label: "25%",
},
{
value: 50,
label: "50%",
},
{
value: 75,
label: "75%",
},
{
value: 100,
label: "100%",
},
];
function handleChange(event: any, value: number | number[]) {
handleSelectedItem(String(value));
}
return (
<Slider
aria-label="Restricted values"
defaultValue={0}
// eslint-disable-next-line react/jsx-no-bind
onChange={handleChange}
// eslint-disable-next-line react/jsx-no-bind
step={1}
valueLabelDisplay="auto"
marks={marks}
sx={{
height: "4px", // Slider의 높이 변경
"& .MuiSlider-rail": {
backgroundColor: isTheme.body.gray400, // Slider의 막대 색상 변경
},
"& .MuiSlider-mark": {
width: "10px", // 동그란 점의 크기 변경
height: "10px", // 동그란 점의 크기 변경
borderRadius: "50%", // 동그란 점의 모양 변경
backgroundColor: isTheme.body.gray400,
},
"& .MuiSlider-markActive": {
backgroundColor: isTheme.body.primary,
},
"& .MuiSlider-markLabel": {
color: isTheme.body.gray400, // Slider의 마커 색상 변경
"&.MuiSlider-markLabel-active": {
color: isTheme.body.gray400, // active 될 때 마커 색상 변경
},
},
"& .MuiSlider-thumb": {
backgroundColor: "#FFF", // thumb의 색상 변경
border: `6px solid${isTheme.body.primary}`, // thumb의 테두리 변경
"&:hover, &:focus, &.active": {
boxShadow: "none", // thumb의 hover 효과 제거
},
},
}}
/>
'[React]' 카테고리의 다른 글
[React][TradingView] LibrarySymbolInfo 객체 속성 (0) | 2023.06.08 |
---|---|
[React][TypeScript] StoryBook 설치 및 사용 설명 (0) | 2023.05.08 |
[React][TypeScript][MUI] MUI Switch Toogle버튼의 크기를 변경해보자 (width, height, 동그라미 크기, 동그라미 위치) (0) | 2023.04.06 |
[React] react-router-dom 에서 URL 파라미터를 받아와보자 (0) | 2023.04.04 |
[React][TypeScript] useState 리스트 필터링 및 삭제 (0) | 2023.03.31 |
Comments