跳转到内容

DatePicker

日期选择器

RenderType 包含 DatePicker 和 DateRangePicker

API

IDatePickerProps

参数类型说明默认值
initValueUnix时间戳初始值-
showTimeboolean是否显示时间-
formatstring显示格式-
disabledDate(moment: moment.Moment) => boolean配置不可选日期-
prefixSelectstring用于设置前置选择,例如提供“今天”,“明天”等选项便捷输入, 目前只支持设置为“preset”,由系统提供预设-
disabledTime?: (
current: moment.Moment
) => {
disabledHours?: () => number[];
disabledMinutes?: () => number[];
disabledSeconds?: () => number[];
};

format 时间格式化,参考规则momentjs

disabledDate 参数 current 是个 moment 对象,常用方法有:isSame、isSameOrAfter、isSameOrBefore、isBetween。

如果需要区间选择时时间默认 00:00:00 ~ 23:59:59

<RenderType>
<DateRangePicker useDefaultRange="#{true}" showTime="#{true}" />
</RenderType>

用法

<View title="DatePicker" version="2">
<Record key="person" model="trantor_doc_Person" />
<Form model="trantor_doc_Person" title="编辑态">
<Fields>
<!-- TimePicker无效(没有model)initValue无效 -->
<Field name="birthday" label="DatePicker" initValue="#{new Date('2020-04-02').getTime()}">
<RenderType>
<DatePicker />
</RenderType>
</Field>
<Field name="birthday" label="2020-03-01至2020-5-01之间">
<RenderType>
<DatePicker disabledDate="#{(current) => current.isBefore('2020-03-01') || current.isAfter('2020-5-01')}" />
</RenderType>
</Field>
<Field name="birthday" label="2020-04-01之后">
<RenderType>
<DatePicker disabledDate="{(current) => current.isBefore('2020-04-01')}"
disabledTime="#{
(current) => {
disabledHours: () => [1,2,3];
disabledMinutes: () => [50,51,52,60];
disabledSeconds: () => [50,51,52,60];
}}" />
</RenderType>
</Field>
<Field name="birthday" label="今天之前">
<RenderType>
<DatePicker disabledDate="#{(current) => current.isAfter(new Date().getTime())}" />
</RenderType>
</Field>
</Fields>
</Form>
<Detail model="trantor_doc_Person" lookupFrom="person" title="展示态">
<Fields>
<Field name="birthday" label="日期">
<RenderType>
<DatePicker format="YYYY-MM-DD" tips="这是日期"/>
</RenderType>
</Field>
</Fields>
</Detail>
<Table model="trantor_doc_Person"
dataCondition="department.id = ?" dataParams="[#department.data.id] title="搜索态">
<Search>
<Fields>
<Field name="birthday" label="日期">
<RenderType>
<DateRangePicker />
</RenderType>
</Field>
</Fields>
</Search>
<Fields>
<Field name="name" />
<Field name="birthday" />
</Fields>
</Table>
</View>

注意:当前例子为0.17.x 版本