@1stquad/react-bootstrap-datetimepicker 中文文档教程
react-bootstrap-datetimepicker
这个项目是 https://github.com/Eonasdan/bootstrap-datetimepicker 的端口,用于 React.js
Usage
安装:npm install --save @1stquad/react-bootstrap-datetimepicker
Then
//ES5
var DateTimeField = require('react-bootstrap-datetimepicker');
//ES6
import DateTimeField from "react-bootstrap-datetimepicker"
...
render: function() {
return <DateTimeField />;
}
See Examples 了解更多详情。
API
DateTimeField
Name | Type | Default | Description |
---|---|---|---|
dateTime | string or moment | moment.utc().format('x') | Represents the initial dateTime. If this is a string it will be parsed by moment.js using format, otherwise an existing moment instance may be used. |
format | string | "x" | Defines the format moment.js should use to parse and output the date to onChange |
inputFormat | string or array | see default format table below | Defines the accepted date formats in the HTML input. It must be a format understandable by moment.js |
inputDisplayFormat | string | When there is no inputFormat given: see default format table below. When an inputFormat is given and it is a string: it takes the inputFormat. When the inputFormat is an array: it takes the first inputFormat. | Defines the display format of the date in the HTML input. It must be a format understandable by moment.js. If there is an inputFormat given, the inputDisplayFormat must be one of the formats listed in the inputFormat |
onChange | function | x => console.log(x) | Callback trigger when the date changes. x is the new datetime value. |
onBlur | function | () => {} | Callback trigger when the date field blurs. |
onEnterKeyDown | function | () => {} | Callback trigger when the Enter key is pressed. |
showToday | boolean | true | Highlights today's date |
size | string | "md" | Changes the size of the date picker input field. Sizes: "sm", "md", "lg" |
daysOfWeekDisabled | array of integer | [] | Disables clicking on some days. Goes from 0 (Sunday) to 6 (Saturday). |
viewMode | string or number | 'days' | The default view to display when the picker is shown. ('time', 'years', 'months', 'days') |
inputProps | object | undefined | Defines additional attributes for the input element of the component. |
inputRef | string or function | inputDateTime | Allows a custom reference to be passed to the input field. |
minDate | moment | undefined | The earliest date allowed for entry in the calendar view. |
maxDate | moment | undefined | The latest date allowed for entry in the calendar view. |
mode | string | undefined | Allows to selectively display only the time picker ('time'), date picker ('date'), date-timepicker ('datetime') or month picker ('month') |
defaultText | string | undefined | Sets the input's placeholder value. Could be an empty string, or helper text. |
name | string | undefined | Sets the name of the input element. |
tabIndex | string | undefined | Sets the tabIndex of the input element. |
startOfWeek | string | "isoWeek" | Define start of week day. ('isoWeek' - from Monday, 'week' - from Sunday) |
Default Format Based on Mode
Mode | Format |
---|---|
time | "h:mm A" |
date | "MM/DD/YY" |
month | "MM/YY" |
none given | "MM/DD/YY h:mm A" |
Release Process
一旦你的 pull request 被合并到 master:
通过在 master 分支上运行
git pull
来确保你有最新的更改。(可选) 通过运行
npm run build-npm
并从 lib 手动检查文件,检查您的更改是否反映在 lib/react-bootstrap-datetimepicker.js 文件中文件夹。如果您对更改感到满意,请在控制台上运行:
npm run patch-release
OR
npm run minor-release
OR
npm run major-release
请尊重语义版本控制!
如果发布命令失败,那么请阅读发布命令的作用(参见package.json
),并找出过程中的哪一步出错,以便您可以重试那一点。 如果您遇到困难,请 ping #ex-myob-widgets 寻求帮助!
Local linking to another project
- Run
npm run build-npm
from the react-bootstrap-datetimepicker console. - In your other project's package.json, Use
"@1stquad/react-bootstrap-datetimepicker: "#{local_path}/react-bootstrap-datetimepicker"
instead of"@1stquad/react-bootstrap-datetimepicker": "1.0.5"
in the dependency list. - Run
npm install @1stquad/react-bootstrap-datetimepicker
from the same folder level as the package.json.
Update Warning
从 0.0.6 开始,3 个 github 存储库 react-bootstrap-datetimepicker
、react-bootstrap-datetimepicker-npm
和 react-bootstrap-datetimepicker-bower 合并为一个。 构建过程发生了变化,但 API 是相同的。 但是现在包直接导出 DateTimeField,不需要做 :
var DateTimeField = require('react-bootstrap-datetimepicker').DateTimeField;
而是使用 :
var DateTimeField = require('react-bootstrap-datetimepicker');
Contributions
与原始日期时间选择器相比,仍然缺少很多功能,因此非常感谢贡献。
react-bootstrap-datetimepicker
This project is a port of https://github.com/Eonasdan/bootstrap-datetimepicker for React.js
Usage
Installation : npm install --save @1stquad/react-bootstrap-datetimepicker
Then
//ES5
var DateTimeField = require('react-bootstrap-datetimepicker');
//ES6
import DateTimeField from "react-bootstrap-datetimepicker"
...
render: function() {
return <DateTimeField />;
}
See Examples for more details.
API
DateTimeField
Name | Type | Default | Description |
---|---|---|---|
dateTime | string or moment | moment.utc().format('x') | Represents the initial dateTime. If this is a string it will be parsed by moment.js using format, otherwise an existing moment instance may be used. |
format | string | "x" | Defines the format moment.js should use to parse and output the date to onChange |
inputFormat | string or array | see default format table below | Defines the accepted date formats in the HTML input. It must be a format understandable by moment.js |
inputDisplayFormat | string | When there is no inputFormat given: see default format table below. When an inputFormat is given and it is a string: it takes the inputFormat. When the inputFormat is an array: it takes the first inputFormat. | Defines the display format of the date in the HTML input. It must be a format understandable by moment.js. If there is an inputFormat given, the inputDisplayFormat must be one of the formats listed in the inputFormat |
onChange | function | x => console.log(x) | Callback trigger when the date changes. x is the new datetime value. |
onBlur | function | () => {} | Callback trigger when the date field blurs. |
onEnterKeyDown | function | () => {} | Callback trigger when the Enter key is pressed. |
showToday | boolean | true | Highlights today's date |
size | string | "md" | Changes the size of the date picker input field. Sizes: "sm", "md", "lg" |
daysOfWeekDisabled | array of integer | [] | Disables clicking on some days. Goes from 0 (Sunday) to 6 (Saturday). |
viewMode | string or number | 'days' | The default view to display when the picker is shown. ('time', 'years', 'months', 'days') |
inputProps | object | undefined | Defines additional attributes for the input element of the component. |
inputRef | string or function | inputDateTime | Allows a custom reference to be passed to the input field. |
minDate | moment | undefined | The earliest date allowed for entry in the calendar view. |
maxDate | moment | undefined | The latest date allowed for entry in the calendar view. |
mode | string | undefined | Allows to selectively display only the time picker ('time'), date picker ('date'), date-timepicker ('datetime') or month picker ('month') |
defaultText | string | undefined | Sets the input's placeholder value. Could be an empty string, or helper text. |
name | string | undefined | Sets the name of the input element. |
tabIndex | string | undefined | Sets the tabIndex of the input element. |
startOfWeek | string | "isoWeek" | Define start of week day. ('isoWeek' - from Monday, 'week' - from Sunday) |
Default Format Based on Mode
Mode | Format |
---|---|
time | "h:mm A" |
date | "MM/DD/YY" |
month | "MM/YY" |
none given | "MM/DD/YY h:mm A" |
Release Process
Once your pull request has been merged to master:
Make sure you have the latest changes by running
git pull
on the master branch.(Optional) Check that your changes are reflected in the lib/react-bootstrap-datetimepicker.js file by running
npm run build-npm
and checking the file manually from the lib folder.When you're happy with your changes, run on your console:
npm run patch-release
OR
npm run minor-release
OR
npm run major-release
Please respect semantic versioning!
If the release command fails, then please read what the release command does (see package.json
), and figure out which step of the process went wrong, so that you can re-try just that bit. If you get stuck, ping #ex-myob-widgets for help!
Local linking to another project
- Run
npm run build-npm
from the react-bootstrap-datetimepicker console. - In your other project's package.json, Use
"@1stquad/react-bootstrap-datetimepicker: "#{local_path}/react-bootstrap-datetimepicker"
instead of"@1stquad/react-bootstrap-datetimepicker": "1.0.5"
in the dependency list. - Run
npm install @1stquad/react-bootstrap-datetimepicker
from the same folder level as the package.json.
Update Warning
Starting from 0.0.6, the 3 github repositories react-bootstrap-datetimepicker
, react-bootstrap-datetimepicker-npm
and react-bootstrap-datetimepicker-bower
are merged in a single one. The build process changed but the API is the same. However now the package exports DateTimeField directly, no need to do :
var DateTimeField = require('react-bootstrap-datetimepicker').DateTimeField;
instead use :
var DateTimeField = require('react-bootstrap-datetimepicker');
Contributions
There is still plenty of features missing compared to the original date time picker, hence contributions would be highly appreciated.