我有日历下拉列表,它正在运行。但是,我想在其中提供默认日期。它怎么能这样做。
以下是我的组件如下:
import {HttpClient} from '@angular/common/http';
import { Component, OnInit } from '@angular/core';
import { routerTransition } from '../../router.animations';
import { isNumber } from '@ng-bootstrap/ng-bootstrap/util/util';
@Component({
selector: 'app-dashboard',
templateUrl: './dashboard.component.html',
styleUrls: ['./dashboard.component.scss'],
animations: [routerTransition()]
})
export class DashboardComponent implements OnInit {
value= new Date();
today_date: string;
ngOnInit() {
this.today_date = this.value.getFullYear() + '-' + this.value.getMonth() + '-' + this.value.getDate();
console.log(this.today_date)
}
}
HTML代码如下:
<div>
<p-calendar (ngModel)="today_date" [inputStyle]="{'width':'100%'}" dateFormat="yy-mm-dd"></p-calendar>
</div>
没有选择日期。 Console.log out是&#39; 2017/10/17&#39;
答案 0 :(得分:2)
根据我的理解,p-calendar
的值为Date
类型。所以一个字符串不起作用。这就是我对我的看法,而且效果很好:
TS
import * as moment from "moment"; //I use MomentJS and I recommend it also. The snippet is based on MomentJS as well.
calendarDate: Date;
ngOnInit() {
this.calendarDate = moment().toDate();
}
HTML
<p-calendar [ngModel]="calendarDate"></p-calendar>
编辑:您的HTML模板中的语法错误。 (ngModel)
没有任何意义。属性绑定应为[ngModel]
,事件绑定应为(ngModelChange)
,双向绑定应为[(ngModel)]
。