问题描述
我正在使用 Material-UI Slider,我想使用 onChange
函数获取值。
我的代码是这样的:
const SliderScale: React.FC = () => {
const classes = useStyles();
const [inputValue,setInputValue] = useState(0);
const updaterange = (value: number) : void => {
setInputValue(value);
};
return (
<div className={classes.root}>
<Typography id="discrete-slider" gutterBottom>
value
</Typography>
<Slider
defaultValue={0}
value={inputValue}
getAriaValueText={valuetext}
aria-labelledby="discrete-slider"
valueLabeldisplay="on"
step={0.5}
marks={false}
min={0}
max={10}
onChange={updaterange}
/>
</div>
);
};
export default SliderScale;
(JSX 属性) onChange?: ((event: React.ChangeEvent,value: number | number[]) => void) |不明确的
没有重载匹配这个调用。
重载 1 of 2,'(props: { component: ElementType; } & { 'aria-label'?: string | undefined; 'aria-labelledby'?: string | undefined; 'aria-valuetext'?: string | undefined; color?: "primary" | "secondary" | undefined; ... 18 more ...; valueLabelFormat?: string | ... 1 more ... | undefined; } & CommonProps<...> & Pick<. ..>): Element',出现以下错误。
类型 '(value: number) => void' 不能分配给类型 '(event: ChangeEvent,value: number | number[]) => void'。
参数“值”和“事件”的类型不兼容。
类型“ChangeEvent”不可分配给类型“number”。
重载 2 of 2,'(props: DefaultComponentProps
有人知道怎么弄吗?
解决方法
来自 docs 的 # .github/workflows/logger.yaml
name: Event Loggger
on: push
jobs:
log-github-event-goodies:
name: "LOG Everything on GitHub Event"
runs-on: ubuntu-latest
steps:
- name: Logging
run: |
echo "${{toJSON(github.event)}}"
签名是:
onChange
新值在第二个参数中,而不是 function(event: object,value: number | number[]) => void
回调的第一个。将您的代码更改为:
onChange