【问题标题】:How i can change the format coming from backend Angular REST API?我如何更改来自后端 Angular REST API 的格式?
【发布时间】:2021-02-10 16:48:55
【问题描述】:

我正在使用以下代码:

this.elService.getOne(id)
  .subscribe((result: ModelName) => {
 let test = this.datePipe.transform(result['birthDate'], 'mm/dd/yyyy')
  result['birthDate']= test
  console.log(result['birthDate'])
  this.parentForm.patchValue(result)})

我想更改日期的格式,但它给了我一个错误,说 ** result['birthDate']** is a String is not assignable to date,所以我把它改成了 ** result['birthDate ']= new Date(test)** 但它返回一个无效的日期 注意:我正在使用 DatePicker。 有什么帮助吗?

【问题讨论】:

  • 这是一个 JavaScript 问题。您使用 Date.parse("string date") 解析字符串中的日期,而不是作为日期构造函数的参数。
  • 感谢您的回复,您对我如何更改格式有什么建议吗?我也尝试了图书馆的时刻,但我仍然有同样的问题
  • 它是什么格式,需要是什么格式?
  • 就像'yyyy-mm-dd' 我想把它转换成'dd/mm/yyyy'
  • 只是 console.log(result['birthDate']) 在 datePipe.transform 之前,所以我们可以看到您从 elService 获得的实际字符串。 datePipe 根本无法识别 elService 提供的字符串中的日期。

标签: angular typescript datepicker


【解决方案1】:

不需要使用额外的测试变量,您可以直接将更新日期分配给结果['birthDate']

result['birthDate'] = this.datePipe.transform(new Date(result['birthDate']), 'mm/dd/yyyy')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-07-26
    • 1970-01-01
    • 1970-01-01
    • 2021-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多