我正在使用非常复杂的属性绑定来更改用户生日的日期,月份或年份。在用户上具有类型为birthDate
的at date
,为每个日期具有三个属性。
我使用moment.js来简化日期操作。
通过尝试reduced showcase on jsfiddle,您会看到如果您更改年份或日期,则月份总是增加1.我无法说明发生了什么。就是这样:设置新日期时,值是正确的,稍后会更改。 ember-data date
属性和某些格式是否存在问题?
再次:here's the jsfiddle - 用CoffeeScript写的。
提前致谢!
答案 0 :(得分:3)
我查看了你的代码,它看起来应该工作正常,我越是通过它越多,我越来越生气,我无法发现问题...原来这是.month()方法来自Moment.js ...... from the docs:
“通过更改月份来改变原始时刻。接受0到11之间的数字”
非常愚蠢吧?在任何情况下,当使用.month()
时,将setMonth更改为从值中减去1setMonth: (property, value) ->
@set property, moment(@get(property)).month(value-1).format()
return value