1

非常に複雑なプロパティバインディングを使用して、ユーザーの誕生日の日、月、または年を変更できるようにしています。ユーザーbirthDateにタイプdateの属性があり、日付の各部分に3つのプロパティがあります。私はmoment.jsを使用して日付操作を簡素化しています。

jsfiddleで縮小されたショーケースを試してみると、年または日を変更すると、月が常に1ずつ増えることがわかります。何が起こっているのかはわかりません。これだけです。新しい日付を設定するとき、値は正しく、後で変更されます。ember-datadate属性といくつかのフォーマットに問題がありますか?

繰り返しますが、これがjsfiddleです-CoffeeScriptで書かれています。

前もって感謝します!

4

1 に答える 1

3

私はあなたのコードを見て、問題なく動作しているように見えました.ステップを踏むほど、問題を見つけることができなかったことに腹を立てました.Moment.jsの.month()メソッドであることがわかりました. ...ドキュメントから

「月を変えることで元の瞬間を変異させます。0から11までの数字を受け入れます」

かなりばかですよね?いずれにせよ、setMonth を変更して、.month() を使用するときに値から 1 を減算します。

setMonth: (property, value) ->
  @set property, moment(@get(property)).month(value-1).format()
  return value
于 2012-11-24T03:48:02.260 に答える