欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于datepicker定義自己的angular時(shí)間組件的示例

 更新時(shí)間:2018年03月14日 08:36:48   作者:阿踏  
這篇文章主要介紹了基于datepicker定義自己的angular時(shí)間組件,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

基于datepicker定義自己的angular時(shí)間組件,分享給大家。

首先是引入相應(yīng)的文件jquery和datepicker,如下

 "styles": [
   "styles.less",
   "./assets/lib/datetimepicker/datetimepicker.css"
  ],
  "scripts": [
   "assets/lib/jquery/jquery.min.js",
   "./assets/lib/datetimepicker/datetimepicker.js",
  ],

然后是ts文件

import { Component, EventEmitter, OnInit, AfterViewInit, ElementRef, Input, Output } from '@angular/core';
import { ControlValueAccessor, NgControl } from '@angular/forms';

declare var $: any;

@Component({
 selector: 'my-datepicker',
 template: '<input [name]="name" [disabled]="disabled" class="ant-input" [value]="value">'
})

export class MyDatePickerComponent implements OnInit, AfterViewInit, ControlValueAccessor {
 constructor(
  private _element: ElementRef,
  public _control: NgControl
 ) {
  if (this._control) {
   this._control.valueAccessor = this;
  }
 }

 @Input()
 name:string;

 @Input()
 disabled:string;

 @Input()
 options:Object = {};

 @Input('ngModel')
 value: string;

 @Output() onChoose = new EventEmitter<any>();
 
 defaults: Object;

 _onChange = (value: any) => {};

 writeValue(value: string) {
  if (value) {
   this.value = value;
  }
 }

 registerOnChange(fn: (value: any) => void) {
  this._onChange = fn;
 }

 registerOnTouched(fn: any) {

 }

 ngOnInit() {
  if (this.value == undefined) {
   this.value = '';
  }

  let _this = this;
  this.defaults = {
       format: 'YYYY-MM-DD',
       isToday:true,
       choosefun: function(ele, data){
        _this._choose(data);
       },
       clearfun: function(){
        _this._clear();
       },
       closefun: function() {
        _this._close();
       }
      };
 }

 ngAfterViewInit() {
  let options = $.extend({}, this.defaults, this.options);

  $(this._element.nativeElement).find('input').jeDate(options)
   .on('click', function(e) {
    e.stopPropagation();

    $(this).addClass('focus').blur();
   });
 }

 private _choose(value: string) {
  this._onChange(value);

  this.onChoose.emit(value); // 選中事件
 }

 private _clear() {
  this._onChange('');

  this.onChoose.emit(''); // 選中事件
 }

 private _close() {
  $(this._element.nativeElement).find('input').removeClass('focus');
 }
}

最后是調(diào)用,option里面定義自己的時(shí)間格式

復(fù)制代碼 代碼如下:

 <my-datepicker  name="jssj" [(ngModel)]="search.jssj" [options]="{format:'YYYY-MM-DD hh:mm:ss'}"></my-datepicker>

總結(jié):通過(guò)這個(gè)組件,我們只需要調(diào)用my-datepicker 就可以在任意模塊引入然后使用,減少代碼的使用,方便維護(hù)

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • angularjs自定義過(guò)濾器demo示例

    angularjs自定義過(guò)濾器demo示例

    這篇文章主要介紹了angularjs自定義過(guò)濾器,結(jié)合完整實(shí)例形式分析了angularjs自定義過(guò)濾器相關(guān)原理、使用方法及操作注意事項(xiàng),需要的朋友可以參考下
    2019-08-08
  • 淺談Angular HttpClient簡(jiǎn)單入門(mén)

    淺談Angular HttpClient簡(jiǎn)單入門(mén)

    本篇文章主要介紹了淺談Angular HttpClient 簡(jiǎn)單入門(mén),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • Angular4實(shí)現(xiàn)鼠標(biāo)懸停3d傾斜效果

    Angular4實(shí)現(xiàn)鼠標(biāo)懸停3d傾斜效果

    這篇文章主要介紹了Angular4實(shí)現(xiàn)鼠標(biāo)懸停3d傾斜效果,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2017-10-10
  • 詳解Webstorm 下的Angular2.0開(kāi)發(fā)之路(圖文)

    詳解Webstorm 下的Angular2.0開(kāi)發(fā)之路(圖文)

    這篇文章主要介紹了詳解Webstorm 下的Angular2.0開(kāi)發(fā)之路(圖文) ,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • angular中如何綁定iframe中src的方法

    angular中如何綁定iframe中src的方法

    這篇文章主要介紹了angular中如何綁定iframe中src的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-02-02
  • 使用ngView配合AngularJS應(yīng)用實(shí)現(xiàn)動(dòng)畫(huà)效果的方法

    使用ngView配合AngularJS應(yīng)用實(shí)現(xiàn)動(dòng)畫(huà)效果的方法

    這篇文章主要介紹了使用ngView配合AngularJS應(yīng)用實(shí)現(xiàn)動(dòng)畫(huà)效果的方法,AngularJS是十分熱門(mén)的JavaScript庫(kù),需要的朋友可以參考下
    2015-06-06
  • 詳解如何在Angular中使用環(huán)境變量

    詳解如何在Angular中使用環(huán)境變量

    如果你正在構(gòu)建一個(gè)使用 API 的應(yīng)用程序,你會(huì)想在開(kāi)發(fā)過(guò)程中使用測(cè)試環(huán)境的 API 密鑰,而在生產(chǎn)環(huán)境中使用生產(chǎn)環(huán)境的 API 密鑰,在本教程中,你將學(xué)習(xí)如何在 Angular 中使用環(huán)境變量,需要的朋友可以參考下
    2024-02-02
  • AngularJS實(shí)現(xiàn)進(jìn)度條功能示例

    AngularJS實(shí)現(xiàn)進(jìn)度條功能示例

    這篇文章主要介紹了AngularJS實(shí)現(xiàn)進(jìn)度條功能,結(jié)合具體完整實(shí)例形式分析了AngularJS實(shí)現(xiàn)進(jìn)度條功能的原理、相關(guān)知識(shí)點(diǎn)與注意事項(xiàng),需要的朋友可以參考下
    2017-07-07
  • AngularJS實(shí)現(xiàn)表單手動(dòng)驗(yàn)證和表單自動(dòng)驗(yàn)證

    AngularJS實(shí)現(xiàn)表單手動(dòng)驗(yàn)證和表單自動(dòng)驗(yàn)證

    本文是對(duì)AngularJS表單驗(yàn)證,手動(dòng)驗(yàn)證或自動(dòng)驗(yàn)證的講解,對(duì)學(xué)習(xí)JavaScript編程技術(shù)有所幫助,感興趣的小伙伴們可以參考一下
    2015-12-12
  • 淺談AngularJS中ng-class的使用方法

    淺談AngularJS中ng-class的使用方法

    下面小編就為大家?guī)?lái)一篇淺談AngularJS中ng-class的使用方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-11-11

最新評(píng)論