X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=examples%2Fdisabled.js;h=4b7c5eb4b33ea082a29319710bc2538dc436a0f3;hb=6fc4e0e8e2f7bd8bbcbb759a69bc7b94930f131c;hp=24d0068f259ec35f0bbcdb553a54407dffcb5bd5;hpb=0e62bf0b7bdc260e882fd185492939cbaed04d56;p=github%2Ffretlink%2Ftime-picker.git diff --git a/examples/disabled.js b/examples/disabled.js index 24d0068..4b7c5eb 100644 --- a/examples/disabled.js +++ b/examples/disabled.js @@ -7,7 +7,6 @@ import ReactDom from 'react-dom'; import GregorianCalendar from 'gregorian-calendar'; import DateTimeFormat from 'gregorian-calendar-format'; -import zhCn from 'gregorian-calendar/lib/locale/zh_CN'; import TimePicker from 'rc-time-picker'; import TimePickerLocale from 'rc-time-picker/src/locale/zh_CN'; @@ -17,20 +16,50 @@ const str = showSecond ? 'HH:mm:ss' : 'HH:mm'; const formatter = new DateTimeFormat(str); -const now = new GregorianCalendar(zhCn); +const now = new GregorianCalendar(TimePickerLocale.calendar); now.setTime(Date.now()); +function generateOptions(length, excludedOptions) { + const arr = []; + for (let value = 0; value < length; value++) { + if (excludedOptions.indexOf(value) < 0) { + arr.push(value); + } + } + return arr; +} + function onChange(value) { console.log(value && formatter.format(value)); } +function disabledHours() { + return [0, 1, 2, 3, 4, 5, 6, 7, 8, 22, 23]; +} + +function disabledMinutes(h) { + switch (h) { + case 9: + return generateOptions(60, [30]); + case 21: + return generateOptions(60, [0]); + default: + return generateOptions(60, [0, 30]); + } +} + +function disabledSeconds(h, m) { + return [h + m % 60]; +} + ReactDom.render( , + disabledHours={disabledHours} + disabledMinutes={disabledMinutes} + disabledSeconds={disabledSeconds} />, document.getElementById('__react-content') );