Module: MHDatePicker

米家插件常用的时间选择器

Parameters:
Name Type Description
animationType string

modal 显示动效, 参考 https://facebook.github.io/react-native/docs/0.54/modal#animationtype

visible bool

是否显示 modal, 参考 https://facebook.github.io/react-native/docs/0.54/modal#visible

title string

标题

showSubtitle bool

是否显示副标题,副标题显示的内容固定,和type有关

confirmColor string

确定按钮的颜色,默认米家绿

type TYPE

时间选择器类型, enum('single', 'time24', 'time12', 'date')

singleType SINGLE_TYPE

单个picker时的选择器类型, enum('month', 'day', 'hour', 'minute', 'second')

current array.<string> | array.<number> | Date

当前选中值,可传入数字数组,字符串数组,Date实例,对所有时间选择器类型有效

min array.<string> | array.<number> | Date

最小值,可传入数字数组,字符串数组,Date实例,只对'single''date'类型生效。对于 date 类型,默认值:现在向前15年

max array.<string> | array.<number> | Date

最大值,可传入数字数组,字符串数组,Date实例,只对'single''date'类型生效。对于 date 类型,默认值:现在向后15年

onSelect function

选好之后的回调函数,返回所有picker的选中值 组成的数组 / 拼接的字符串 / 以及计算出的Date实例, 详见使用 demo

onDismiss function

点击Modal内容外面/取消按钮/确定按钮,Modal隐藏时的回调函数

Since:
  • 10021
Author:
  • Geeook

Members

SINGLE_TYPE :string

单个picker时选择器的类型,也就是显示的单位

TYPE :string

时间选择器类型

Methods

_onValueChanged(index, data)

Picker 滚动回调

Parameters:
Name Type Description
index number
data object

array2Date()

把时间数组转成 Date 实例 ['2019','06','03'] -> new Date() ['15','36'] -> new Date() ['下午','03','36'] -> new Date()

compareDateArray(arrA, arrB)

比较Date时间数组的时间前后 ['2017','06','01'] > ['2017','05','31']

Parameters:
Name Type Description
arrA array
arrB array

convert(cur, type)

根据类型将 Date 实例或者 Array 转换成 ['','','']形式

Parameters:
Name Type Description
cur *
type string

convertTo12(arr)

将24小时制的数组转换成12小时制的数组

Parameters:
Name Type Description
arr Array

dismiss()

隐藏 Modal

generateArray(min, max)

根据极值生成步长为1的数组,并转换成字符串

Parameters:
Name Type Description
min number
max number

getSubtitle(arr)

根据时间选择器类型、app 语言和初始值数组显示不同模板的副标题文案

Parameters:
Name Type Description
arr *

getYears(min, max)

计算出年份的范围

Parameters:
Name Type Description
min *
max *

init()

初始化数据,包括每个picker的范围和选中值

isLeapYear(y)

是否是闰年

Parameters:
Name Type Description
y number

renderButton()

底部按钮

renderContent()

picker 部分

renderTitle()

标题部分

slice(arr, head, tail)

截取部分数组

Parameters:
Name Type Description
arr array
head *
tail *

updateDays(newCurrentArray, newDataSourceArray)

计算当前年份和月份下的天数

Parameters:
Name Type Description
newCurrentArray array
newDataSourceArray array.<array>