0

プロパティを持つコントローラーがあります:

vFrom: window.moment.utc().format('YYYY-MM-DD'),

このプロパティをルート内queryParamsで使用していますember-cli-pagination

vFrom:{
  refreshModel: true
},

を介してこの日付を変更できますember-pikaday。コントローラーで初期化日付を設定vFrom: window.moment.utc().format('YYYY-MM-DD')し、datepicker コンポーネントで使用します。

{{pikaday-input useUTC=true value=vFrom class="form-control"}}

これにより、日付の変更時にモデルの更新がトリガーされます (これが必要です)。

問題は、すべてのブラウザーで機能しない URL に日付変数が含まれ?vFrom=Fri Mar 25 2016 01%3A00%3A00 GMT%2B0100 (CET)てしまい (そして、コンソールでこれについて警告が表示されて)、アプリが壊れてしまうことです。

URL の日付形式を変更するにはどうすればよいですか?

ありがとうございました!

4

2 に答える 2

0

私はオブザーバーでそれを解決しました:

 datef: Ember.observer('vFrom', function(){
    var fromD = this.get('vFrom');
    if( fromD instanceof Date )
    {
      this.set('vFrom', window.moment.utc(fromD).format('YYYY-MM-DD'));
    }
  }),
  datet: Ember.observer('vTo', function(){
    var fromD = this.get('vTo');
    if( fromD instanceof Date )
    {
      this.set('vTo', window.moment.utc(fromD).format('YYYY-MM-DD'));
    }
  })
于 2016-04-04T15:25:44.067 に答える
0

オブザーバーを使用するよりも優れていると思う別の解決策。

{{pikaday-input useUTC=true value=datef class="form-control"}}

queryParams: ['vFrom'],
datef: Ember.computed('vFrom', {
    get() {
        return moment(this.get('vFrom')).format();
    },
    set(key, value) {
        this.set('vFrom', moment(value).format('YYYY-MM-DD'));
        return value;
    }
})
于 2016-04-27T10:06:34.143 に答える