国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

基于datepicker定義自己的angular時間組件的示例

2019-11-19 14:10:38
字體:
來源:轉載
供稿:網友

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

首先是引入相應的文件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'); }}

最后是調用,option里面定義自己的時間格式

復制代碼 代碼如下:

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

總結:通過這個組件,我們只需要調用my-datepicker 就可以在任意模塊引入然后使用,減少代碼的使用,方便維護

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 贵南县| 明水县| 阿巴嘎旗| 木里| 平泉县| 安康市| 汝南县| 固阳县| 新郑市| 平江县| 海阳市| 夹江县| 陇西县| 岐山县| 土默特右旗| 盘山县| 嵩明县| 荥阳市| 张家界市| 新宾| 金坛市| 申扎县| 城市| 沁水县| 修水县| 宁安市| 安徽省| 云霄县| 博野县| 潼南县| 武鸣县| 九台市| 天柱县| 上饶县| 镇原县| 新闻| 子洲县| 常德市| 利辛县| 彰武县| 岳普湖县|