【问题标题】:Print Value of Slider滑块的打印值
【发布时间】:2020-05-05 20:00:19
【问题描述】:

我有一个滑块,想让它打印/显示其当前值,但我不知道该怎么做。

我知道 material.ui 滑块具有 Prop valueLabelDisplay,但出于我的目的,我希望将值显示在其他地方。

function valuetext(value) {
    return `${value}`;
  }

  export default function SliderBars() {
    const classes = useStyles();
    const [value, setValue] = React.useState([23, 37]);

    return (
      <div className={classes.root}>
        <Typography id="range-slider1" gutterBottom>
          Option 1
        </Typography>
        <Slider
          //value={value}
          min="0" max ="10" step = "1"
          valueLabelDisplay="auto"
          aria-labelledby="range-slider1"
          getAriaValueText={valuetext}
          defaultValue={5}
          marks
        />

【问题讨论】:

    标签: javascript reactjs slider


    【解决方案1】:

    如果我猜对了,你需要使用 Slider 的 onChange 事件,在此处查看:https://material-ui.com/api/slider/ 并执行以下操作:

    ...
    onSliderChange = (val) => {
      setValue(val);
    }
    
    
    ...
    <div>{value}</div>
    <Slider
          //value={value}
          min="0" max ="10" step = "1"
          valueLabelDisplay="auto"
          aria-labelledby="range-slider1"
          getAriaValueText={valuetext}
          defaultValue={5}
          onChange={(event, val) => this.onSliderChange(val)}
          marks
        />
    

    【讨论】:

    • 我是否将 onSliderChange 定义为它自己的函数,在导出期间,还是在其他地方?
    • 它应该作为一个普通的命名函数在 SliderBars 组件内部,因为有 setValue 钩子可用,并且该钩子应该用于更新滑块值。让我知道它是否有效
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-29
    • 1970-01-01
    • 1970-01-01
    • 2018-04-03
    • 2012-12-01
    • 1970-01-01
    相关资源
    最近更新 更多