Update slider style

pull/1427/head
LASER-Yi 3 years ago
parent b8512ccf09
commit 22a7541543

@ -1,6 +1,6 @@
import RcSlider from "rc-slider"; import RcSlider from "rc-slider";
import "rc-slider/assets/index.css"; import "rc-slider/assets/index.css";
import React, { FunctionComponent, useMemo } from "react"; import React, { FunctionComponent, useMemo, useState } from "react";
import "./slider.scss"; import "./slider.scss";
type TooltipsOptions = boolean | "Always"; type TooltipsOptions = boolean | "Always";
@ -9,6 +9,7 @@ export interface SliderProps {
tooltips?: TooltipsOptions; tooltips?: TooltipsOptions;
min?: number; min?: number;
max?: number; max?: number;
step?: number;
start?: number; start?: number;
defaultValue?: number; defaultValue?: number;
onAfterChange?: (value: number) => void; onAfterChange?: (value: number) => void;
@ -18,21 +19,31 @@ export interface SliderProps {
export const Slider: FunctionComponent<SliderProps> = ({ export const Slider: FunctionComponent<SliderProps> = ({
min, min,
max, max,
step,
tooltips, tooltips,
defaultValue, defaultValue,
onChange, onChange,
onAfterChange, onAfterChange,
}) => { }) => {
max = max ?? 100;
min = min ?? 0;
step = step ?? 1;
const [curr, setValue] = useState(defaultValue);
return ( return (
<div className="d-flex flex-row align-items-center py-2"> <div className="d-flex flex-row align-items-center py-2">
<span className="text-muted pr-3">{min ?? 0}</span> <span className="text-muted text-nowrap pr-3">{`${min} / ${curr}`}</span>
<RcSlider <RcSlider
min={min ?? 0} min={min}
max={max ?? 100} max={max}
className="custom-rc-slider" className="custom-rc-slider"
step={1} step={step}
defaultValue={defaultValue} defaultValue={defaultValue}
onChange={onChange} onChange={(v) => {
setValue(v);
onChange && onChange(v);
}}
onAfterChange={onAfterChange} onAfterChange={onAfterChange}
handle={(props) => ( handle={(props) => (
<div <div
@ -48,7 +59,7 @@ export const Slider: FunctionComponent<SliderProps> = ({
</div> </div>
)} )}
></RcSlider> ></RcSlider>
<span className="text-muted pl-3">{max ?? 100}</span> <span className="text-muted pl-3">{max}</span>
</div> </div>
); );
}; };

Loading…
Cancel
Save