选择任何内容后,PrimeNG日历会自动关闭

时间:2019-05-15 14:40:03

标签: angular typescript primeng primeng-calendar

我有一个PrimeNG日历,我需要以一种自定义方式初始化/设置数据,而没有直接的双向绑定([(ngModel)]))。但是,由于某种原因,当我在日历上选择任何内容后,它立即关闭,这似乎可行。 我不希望它关闭,仅当我单击(模糊)时。 AFAIK,这是演示(https://www.primefaces.org/primeng/#/calendar)中的默认行为 但是我不确定是什么原因造成的。

这是我的代码: 模板

<p-calendar
    [showTime]="true"
    appendTo="body"
    [ngModel]="getDate(item[column.field])"
    (ngModelChange)="
        setSelectedDate(
            $event,
            column.field,
            rowIndex
        )
    "
>
</p-calendar>

方法

getDate(dateString: string) {
    return new Date(dateString);
}

setSelectedDate(event: any, columnFieldName: string, rowIndex: number) {
    if (this.settings.stateActions.InlineEditGridCellData) {
        this.store.dispatch(
            new this.settings.stateActions.InlineEditGridCellData({
                rowIndex: rowIndex,
                columnFieldName: columnFieldName,
                value: event
            })
        );
    }

    return new Date(event);
}

我需要对我的(ngModelChange)方法做些特定的事情吗?它会被调用并触发其中的操作(NgRx操作),但是日历会立即关闭而不是保持打开状态。

谢谢。

0 个答案:

没有答案