1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/open-hand-choerodon-ui

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Range.tsx 1.8 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
xilang Отправлено 2 лет назад fc168fa
import React, { ReactNode } from 'react';
import { observer } from 'mobx-react';
import noop from 'lodash/noop';
import omit from 'lodash/omit';
import Slider, { SliderProps } from 'choerodon-ui/lib/slider';
import { NumberField } from '../number-field/NumberField';
export interface RangeProps extends SliderProps {
/**
* 是否垂直方向
*/
vertical?: boolean;
min?: number;
max?: number;
dots?: boolean;
included?: boolean;
range?: boolean;
step?: number;
defaultValue?: number | [number, number];
}
@observer
export default class Range extends NumberField<RangeProps> {
static displayName = 'Range';
static defaultProps = {
...NumberField.defaultProps,
suffixCls: 'range',
min: 0,
step: 1,
max: 100,
vertical: false,
dots: false,
marks: {},
included: true,
range: false,
tipFormatter: null,
};
renderWrapper(): ReactNode {
return (
<label key="wrapper" {...omit(this.getWrapperProps(), ['style'])}>
{this.renderTrack()}
</label>
);
}
renderTrack() {
const {
props: { dataSet, onChange = noop, ...otherProps },
prefixCls,
} = this;
if (this.readOnly) {
otherProps.value = this.value;
}
if (dataSet) {
let props: RangeProps = {};
if (otherProps.name) {
const field = dataSet.getField(otherProps.name);
if (field) {
props = { ...field.getProps() } as RangeProps;
}
const { current } = dataSet;
if (current) {
props.value = current.get(otherProps.name);
}
}
return (
<Slider prefixCls={prefixCls} {...otherProps} {...props} onChange={(value) => {
this.setValue(value)
onChange(value)
}} />
);
}
return (
<Slider prefixCls={prefixCls} {...otherProps} onChange={onChange} />
);
}
}

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://gitlife.ru/oschina-mirror/open-hand-choerodon-ui.git
git@gitlife.ru:oschina-mirror/open-hand-choerodon-ui.git
oschina-mirror
open-hand-choerodon-ui
open-hand-choerodon-ui
master