Coder Social home page Coder Social logo

robertrajcool / ng2-datetime-picker Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ng2-ui/datetime-picker

0.0 2.0 0.0 2.92 MB

Angular2 DateTime Picker

Home Page: https://ng2-ui.github.io/#/datetime-picker

License: MIT License

TypeScript 93.94% HTML 1.51% JavaScript 4.55%

ng2-datetime-picker's Introduction

ng2-datetime-picker

Join the chat at https://gitter.im/ng2-ui/ng2-datetime-picker AngularJS 2 DateTime Picker

Plunker Example
French Example

How Does It Work

  1. Get a Date or string from input field.
  2. If input value is string, convert it to Date object and save it internally.
  3. When the input field is clicked, show date time picker with date value.
  4. When date time is selected, set toString function of selected date for formatting.
  5. Set input field with the selected value.

Install

  1. install ng2-datetime-picker

     $ npm install ng2-datetime-picker --save
    
  2. add map and packages to your systemjs.config.js

     map[‘ng2-datetime-picker'] = 'node_modules/ng2-datetime-picker/dist';
     packages[‘ng2-datetime-picker'] = { main: 'ng2-datetime-picker.umd.js', defaultExtension: 'js’ }
    
  3. import Ng2DatetimePickerModule to your AppModule

     import { NgModule } from '@angular/core';
     import { FormsModule } from "@angular/forms";
     import { BrowserModule  } from '@angular/platform-browser';
     import { AppComponent } from './app.component';
     import { Ng2DatetimePickerModule } from 'ng2-datetime-picker';
     
     @NgModule({
       imports: [BrowserModule, FormsModule, Ng2DatetimePickerModule],
       declarations: [AppComponent],
       bootstrap: [ AppComponent ]
     })
     export class AppModule { }
    

Usage it in your code

   <input
      [(ngModel)]="myDate"
      ng2-datetime-picker 
      date-only="true" />

   <form [formGroup]="myForm">
     <input 
       required
       [(ngModel)]='myVar' 
       formControlName="date" 
       ng2-datetime-picker
        date-only="true"/>
   </form>
   
   <input 
      [(ngModel)]="date2" ng2-datetime-picker
      date-format="DD-MM-YYYY hh:mm"
      year="2014"
      month="12"
      day="31"
      hour="23"
      minute='59'
      close-on-select="false"  />

For full example, please check test directory to see the example of;

  • systemjs.config.js
  • app.module.ts
  • and app.component.ts.

Override default style

The default style is written in src/ng2-datetime-picker.component.ts. This can be overwritten by giving more details css seletor.

e.g.,

#my-div .ng2-datetime-picker {
  background-color: blue;
}

Override built-in date parser and date formatter

The default date parser and formatter can only handle 'YYYY-MM-DD HH:MM' format if you are not using momentjs. If you use momentjs, you can use momentjs dateformat by adding the following in your html.

<script src="moment-with-locales.min.js"></script>

If you want to have your dateformat without using momentjs, please override Ng2DateTime.parser and Ng2DateTime.formatDate function. For example,

import { Ng2DatetimePickerModule, Ng2DateTime } from 'ng2-datetime-picker';

// Override Date object formatter
Ng2DateTime.formatDate = (date: Date) : string => { ..... my own function .... };

// Override Date object parser
Ng2DateTime.parse = (str: any): Date => { .... my own function ... } ;

@NgModule({
  imports: [BrowserModule, FormsModule, Ng2DatetimePickerModule],
  declarations: [AppComponent],
  bootstrap: [ AppComponent ]
})
export class AppModule { }

ng2-ui welcomes new members and contributors

This module is only improved and maintained by contributors like you;

As a contributor, it's NOT required to be skilled in Javascript nor Angular2. It’s required to be open-minded and interested in helping others. You can contribute to the following;

  • Updating README.md
  • Making more and clearer comments
  • Answering issues and building FAQ
  • Documentation
  • Translation

In result of your active contribution, you will be listed as a core contributor on https://ng2-ui.github.io, and a member of ng2-ui too.

If you are interested in becoming a contributor and/or a member of ng-ui, please send me email to allenhwkim AT gmail.com with your github id.

attributes

All options are optional except value

  • date-only, true or false, default is false

  • close-on-select, true or false. indicates to close ng2-datetime-picker when select a date. default: true

  • time-only, true or false, default is false

  • first-day-of-week start day of week, 0 is sunday

  • date-format, momentjs date format, e.g. YYYY-MM-DD hh:mm:ss You need to include moment js in your html to use date-format.

    <script src="moment.min.js"></script>

For Developers

To start

$ git clone https://github.com/ng2-ui/ng2-datetime-picker.git
$ cd ng2-datetime-picker
$ npm install
$ npm start

List of available npm tasks

  • npm run : List all available tasks
  • npm start: Run app directory for development using webpack-dev-server with port 9001
  • npm run clean: Remove dist folder
  • npm run clean:dist: Clean up unnecessary dist folder within dist and app directory
  • npm run lint: Lint TypeScript code
  • npm run build:ngc: build ES module
  • npm run build:umd: Build UMD module ng2-map.umd.js
  • npm run build:app: Build app/build/app.js for runnable examples
  • npm run build: Build all(build:ngc, build:umc, build:app, and clean:dist)

ng2-datetime-picker's People

Contributors

allenhwkim avatar 0cv avatar tieppt avatar nathankooij avatar kat3su avatar eugenechertkov avatar giorgiofellipe avatar ncwright avatar gitter-badger avatar

Watchers

James Cloos avatar Robert Raj avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.