【发布时间】:2018-12-06 10:31:57
【问题描述】:
我有一个使用 ngb-datepicker 作为日期的输入框。当我试图通过 ngModel 从日期选择器中获取值时,它正在工作。但是当我尝试从函数更新 ngModel 时它不起作用,输入框没有得到更新。请在下面找到sn-p,仅供参考。
工作 stackblitz 链接是 - Working Link 先从日历中选择日期然后第二天是更新模式中的值,而不是输入框中的值。
<!-- typescript code -->
import {Component} from '@angular/core';
@Component({
selector: 'ngbd-datepicker-popup',
templateUrl: './datepicker-popup.html'
})
export class NgbdDatepickerPopup {
model ;
nextDay() {
this.model.day = this.model.day +1 ;
}
}
<!-- Html code -->
<form class="form-inline">
<div class="form-group">
<div class="input-group">
<input class="form-control" placeholder="yyyy-mm-dd"
name="dp" [(ngModel)]="model" ngbDatepicker #d="ngbDatepicker">
<div class="input-group-append">
<button class="btn btn-outline-secondary calendar" (click)="d.toggle()" type="button"></button>
</div>
</div>
</div>
</form>
<hr/>
<button class="btn btn-sm btn-outline-primary mr-2" (click)="nextDay()">Next Day</button>
<pre>Model: {{ model | json }}</pre>
【问题讨论】:
-
这应该可以工作。你在使用一些外部库吗?您是否设置了
ChangeDetectionStrategy.OnPush? -
你能在 StackBlitz 上创建一个示例吗?
-
我在问题中给出了一个链接——“工作链接”
-
对不起,我错过了
标签: javascript angular typescript ngb-datepicker