Javascript 在输入类型date中格式化datetime,使用角度模型
我有一个日期类型的输入,我的“dateOfDiagnosis”是一个来自控制器的字符串,包括时间,如下所示 “2010-09-08T00:00:00”Javascript 在输入类型date中格式化datetime,使用角度模型,javascript,angular,typescript,date-formatting,Javascript,Angular,Typescript,Date Formatting,我有一个日期类型的输入,我的“dateOfDiagnosis”是一个来自控制器的字符串,包括时间,如下所示 “2010-09-08T00:00:00” 这里的问题是ngModel是双向绑定的。在向下传递值时,应用类似于slice的方法是有效的,但在向上传递值时则不起作用。扩展后,您的ngModel绑定如下所示: [ngModel]="claim.claimData.dateOfDiagnosis.slice(0,10)" (ngModelChange)="claim.claimDat
这里的问题是ngModel
是双向绑定的。在向下传递值时,应用类似于slice
的方法是有效的,但在向上传递值时则不起作用。扩展后,您的ngModel
绑定如下所示:
[ngModel]="claim.claimData.dateOfDiagnosis.slice(0,10)"
(ngModelChange)="claim.claimData.dateOfDiagnosis.slice(0,10)=$event"
线路
claim.claimData.dateOfDiagnosis.slice(0,10)=$event
没有意义,是什么触发了你的错误
根据上下文的具体要求,有几种方法可以解决这个问题
如果dateOfDiagnosis
字段不需要采用2010-09-08T00:00:00
格式,您只需调用
this.claim.claimData.dateOfDiagnosis = this.claim.claimData.dateOfDiagnosis.slice(0,10);
设置的位置,或者您可以使用不同的变量以YYYY-MM-DD
格式跟踪日期,并在将其分配回claim.claimData.dateOfDiagnosis
时添加T00:00:00
您甚至可以使用扩展形式的ngModel
来完成这一切。i、 e:
[ngModel]="claim.claimData.dateOfDiagnosis.slice(0,10)"
(ngModelChange)="claim.claimData.dateOfDiagnosis = $event + 'T00:00:00'"
您是否尝试了
子字符串
而不是切片
?如果你告诉我们错误,会更容易帮助…我用错误更新了我的帖子我刚刚尝试了子字符串,看起来错误是相同的,对吧,因为你使用双向绑定,它尝试设置值,并且两个函数都不能位于赋值的左侧。你必须在控制器或数据源端修复它。