計算されたプロパティが存在しない場合はレコードを作成しようとしていますが、計算されたプロパティをレンダリングしようとするとjQuery.Deferred exception
が得られます。ここでEmber-data:レコードが存在しない場合は作成しますか?
は、私がこれまで持っているものです。
deadlineDay: computed(function() {
const oneWeekFromNow = moment().startOf('day').add(1, 'week');
const store = this.get('store');
return store.queryRecord('deadline-day', {
filter: {
date: oneWeekFromNow
}
}).then(result => {
if (!result) {
result = store.createRecord('deadline-day', {
date: oneWeekFromNow
});
result.save();
}
return result;
});
}),
は、その後、私はシンプルなヘルパーでレンダリングしようとしてる私のテンプレートで:
{{display-date deadlineDay.date}}
{{display-date}}
ヘルパーはちょうどreturn date.format('dddd, MMM Do')
を呼び出しますEmberは、それが解決するのを待つのではなく、約束自体をレンダリングしようとしているようです。
これは、.format
が約束の方法ではないため、エラーになります。
これは非常に一般的な使用事例ですが、私は理解が鈍っていると思います。大いに助けになりました!
私はそれが関連しているかどうかわからないんだけど、私のバッキングストアはember-local-storage