Перегрузка Ember относится к отношениям - PullRequest
0 голосов
/ 04 декабря 2018

У меня есть отношение отношение к, определенное в модели, например,

gallery: DS.belongsTo('store-gallery', { async: true }),

Позже я создам новый объект и назначу его для отношения, если оно равно нулю:

let galleryObject = this.get('store').createRecord('store-gallery', {});
this.set('gallery', galleryObject);
console.log('Created', galleryObject, await this.get('gallery'));

Проблема в том, что вызов this.get('gallery') возвращает NULL из-за перезагрузки отношения Ember.

Как установить отношение (желательно без необходимости преобразования его в не асинхронный) без его немедленногоперезаписать это?

1 Ответ

0 голосов
/ 06 декабря 2018

Я не дал того, что вы просили, и, честно говоря, я немного удивлен, что это работает так, как вы объяснили.Я бы не ожидал, что ember-data перезагрузит отношения;потому что вы не налагаете reload на отношение внутри предоставленного вами блока кода.

Помимо того, что я только что объяснил;Вы всегда можете получить текущую стоимость отношения следующим образом;где this является владельцем отношения, как в вашем примере:

this.belongsTo('gallery').value()

Это позволит вам достичь текущего значения отношения, даже если оно асинхронно в синхронизациипуть.Так что вам даже не нужно иметь await там.См. Официальную документацию API , чтобы понять, что я имею в виду.Надеюсь, это поможет.

...