项目作者: laixiangran

项目描述 :
基于Angular的日期组件,依赖的第三方插件:bootstrap-datetimepicker
高级语言: TypeScript
项目地址: git://github.com/laixiangran/e-ngx-datetimepicker.git


e-ngx-datetimepicker

基于Angular的日期组件。

依赖的第三方插件:bootstrap-datetimepicker

Usage

  1. Install

    1. npm install --save e-ngx-datetimepicker@latest
  2. Set in the .angular-cli.json(@angular/cli)

    1. "styles": [
    2. "../node_modules/bootstrap/dist/css/bootstrap.min.css",
    3. "../node_modules/e-ngx-datetimepicker/dist/assets/css/bootstrap-datetimepicker.min.css"
    4. ],
    5. "scripts": [
    6. "../node_modules/jquery/dist/jquery.min.js",
    7. "../node_modules/moment/min/moment.min.js",
    8. "../node_modules/moment/min/moment-with-locales.min.js",
    9. "../node_modules/e-ngx-datetimepicker/dist/assets/js/bootstrap-datetimepicker.min.js",
    10. "../node_modules/bootstrap/dist/js/bootstrap.min.js"
    11. ]
  3. Add the ENgxDatetimepickerModule

    1. import {ENgxDatetimepickerModule} from "e-ngx-datetimepicker";
    2. @NgModule({
    3. imports: [
    4. ENgxDatetimepickerModule
    5. ]
    6. })
  4. Use in Template

    父元素必须设置position: relative

    1. <form class="form-group" #form="ngForm">
    2. <div class="form-group" style="position: relative;">
    3. <label>
    4. 选择日期:
    5. <input type="text" class="form-control"
    6. eNgxDTPicker
    7. #eNgxDTPicker="eNgxDTPicker"
    8. name="time"
    9. [(ngModel)]="datetime"
    10. [options]="options"
    11. required
    12. readonly
    13. (ready)="onReady($event)"
    14. (changeDate)="onChangeDate($event)">
    15. </label>
    16. </div>
    17. </form>
    18. <button class="btn btn-primary" (click)="eNgDTPicker.getFn('minDate')('2017-05-01')">设置最小时间(模板调用)</button>
    19. <button class="btn btn-primary" (click)="setMinDate()">设置最小时间(组件类调用)</button>
    20. <button class="btn btn-danger" (click)="clearDate()">清空数据</button>
  5. Use in Component

    1. datetimepicker: ENgxDatetimepickerDirective;
    2. datetime: any;
    3. options: any = {
    4. format: 'YYYY-MM-DD hh:mm:ss'
    5. };
    6. constructor() {}
    7. onReady($event: ENgxDatetimepickerDirective) {
    8. this.datetimepicker = $event;
    9. }
    10. onChangeDate($event: any) {
    11. // console.log($event);
    12. }
    13. setMinDate() {
    14. this.datetimepicker.getFn('minDate')('2017-05-01');
    15. }
    16. clearDate() {
    17. this.datetime = null;
    18. }

API

exportAs

  • eNgxDTPicker - 导出的指令变量,可在模板获取指令类并调用(#eNgxDTPicker="eNgxDTPicker")。

Inputs

Outputs

  • ready - return ($event); datetimepicker初始化完成的事件,$event为当前ENgxDatetimepickerDirective实例

  • changeDate - return ($event); 时间改变触发的事件,$event为改变之后的时间(由于这个事件触发的频率低,建议使用这个事件来获取改变之后的时间)

  • updateDate - return ($event); 时间视图(比如年视图切换到月视图)改变触发的事件,$event为改变之后的时间

Instance Method

  • getFn(fnName: string): Function - 根据函数名称获取bootstrap-datetimepicker函数

  • show(): void - 显示日期控件

  • hide(): void - 隐藏日期控件

  • destroy(): void - 销毁日期控件

Develop

  1. ```shell
  2. npm install // 安装依赖包
  3. npm start // 启动项目
  4. ```

License

MIT License