Slider滑动输入条 - 图1

Slider 滑动输入条

基本用法

  1. import { Cell, Slider } from 'zarm';
  2. class Demo extends React.Component {
  3. state = {
  4. value: 0,
  5. };
  6. render() {
  7. return (
  8. <>
  9. <Cell title="普通">
  10. <Slider
  11. value={this.state.value}
  12. onChange={(value) => {
  13. this.setState({ value })
  14. console.log(value);
  15. }}
  16. />
  17. </Cell>
  18. <Cell title="设置默认值">
  19. <Slider defaultValue={20} />
  20. </Cell>
  21. <Cell title="设置上下限">
  22. <Slider min={-100} max={100} defaultValue={0} />
  23. </Cell>
  24. <Cell title="禁用状态">
  25. <Slider disabled defaultValue={20} />
  26. </Cell>
  27. </>
  28. )
  29. }
  30. }
  31. ReactDOM.render(<Demo />, mountNode);

刻度与标记

  1. import { Cell, Slider } from 'zarm';
  2. const MARKS = {
  3. 0: '0°C',
  4. 26: '26°C',
  5. 65: '65°C',
  6. 100: '100°C',
  7. }
  8. ReactDOM.render(
  9. <>
  10. <Cell title="显示刻度">
  11. <Slider marks={MARKS} />
  12. </Cell>
  13. <Cell title="显示标记" style={{ paddingBottom: 15 }}>
  14. <Slider showMark marks={MARKS} />
  15. </Cell>
  16. <Cell title="步长为10" style={{ paddingBottom: 15 }}>
  17. <Slider showMark step={10} marks={MARKS} />
  18. </Cell>
  19. <Cell title="步长为null" style={{ paddingBottom: 15 }}>
  20. <Slider showMark step={null} marks={MARKS} />
  21. </Cell>
  22. </>
  23. , mountNode);

方向

  1. import { Cell, Slider } from 'zarm';
  2. const MARKS = {
  3. 0: '0°C',
  4. 26: '26°C',
  5. 65: '65°C',
  6. 100: '100°C',
  7. }
  8. ReactDOM.render(
  9. <Cell title="垂直方向" style={{ padding: '15px 0' }}>
  10. <div style={{ height: 200 }}>
  11. <Slider vertical showMark marks={MARKS} />
  12. </div>
  13. </Cell>
  14. , mountNode);

API

属性类型默认值说明
valuenumber-
defaultValuenumber-初始值
minnumber0最小值
maxnumber100最大值
disabledbooleanfalse是否禁用
stepnumber1步长
verticalbooleanfalse是否为纵向
showMarkbooleanfalse是否显示标记刻度
marks{ [key: number]: React.ReactNode }{}自定义标记刻度的渲染展示
onChange(value?: number) => void-值变化时触发的回调函数