import React, { useMemo } from 'react'; import { Slider, SliderTrack, SliderFilledTrack, SliderThumb, SliderMark, Box } from '@chakra-ui/react'; const MySlider = ({ markList = [], setVal, activeVal, max = 100, min = 0, step = 1, width = '100%' }: { markList?: { label: string | number; value: number; }[]; activeVal: number; setVal: (index: number) => void; max?: number; min?: number; step?: number; width?: string | string[] | number | number[]; }) => { const startEndPointStyle = { content: '""', borderRadius: '6px', width: '6px', height: '6px', backgroundColor: '#ffffff', border: '2px solid #D7DBE2', position: 'absolute', zIndex: 1, top: 0, transform: 'translateY(-3px)' }; const value = useMemo(() => { const index = markList.findIndex((item) => item.value === activeVal); return index > -1 ? index : 0; }, [activeVal, markList]); return ( {markList?.map((item, i) => ( {item.label} ))} {activeVal} ); }; export default MySlider;