【问题标题】:formatting ngb-timepicker so it returns as string not an object格式化 ngb-timepicker 使其返回为字符串而不是对象
【发布时间】:2018-12-04 05:17:14
【问题描述】:

我试图让 ngb-timepicker 返回一个字符串而不是一个对象。目前它返回以下内容:

{
  "hour": 13,
  "minute": 30
}

但我希望它像这样返回:

"13:30"

这是我的html:

    <div class="calender"> <ngb-datepicker #dp 
[(ngModel)]="model"></ngb-datepicker>


<ngb-timepicker [(ngModel)]="time"></ngb-timepicker>

使用 datepicker 我可以将它从一个对象重新格式化为一个字符串:

 constructor(private dateFormatter: NgbDateParserFormatter) {
const string_date = this.dateFormatter.format(this.model);
}

是否有适用于时间的 NgbDateParserFormatter 版本?

【问题讨论】:

  • 如果你想将对象转换为字符串,你可以直接这样做 JSON.stringify(obj);
  • @yer 你能解释一下吗..

标签: javascript angular typescript bootstrap-4


【解决方案1】:

[(ngModel)] 语法只能设置数据绑定属性。如果您需要做更多或不同的事情,您可以编写扩展表单。 属性绑定[ngModel] 负责更新底层输入DOM 元素。当 DOM 发生变化时,事件绑定 (ngModelChange) 会通知外界。

HTML

 <ngb-timepicker [(ngModel)]="time" (ngModelChange)="onTimeChange($event)"></ngb-timepicker>
    <hr>
    <pre>{{newTime}}</pre>

组件

export class AppComponent  {
  name = 'Angular 6';
  public newTime:string='13:30';
  time = {hour: 13, minute: 30};
onTimeChange(value:{hour:string,minute:string})
{
   console.log(value)
   this.newTime=`${value.hour}:${value.minute}`;
}

}

Live Demo

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2013-02-23
  • 2017-07-18
  • 2011-07-29
  • 2012-11-26
  • 1970-01-01
  • 2022-01-09
  • 2016-06-25
  • 1970-01-01
相关资源
最近更新 更多