Hi, I recently refactored a service from a PromiseProxyMixin to an Octane Service. This new service use unknownProperty to replicate the previous behaviour :
this.myService.someRandomProperty
class myService extends Service {
#get(property) {
if (this.data) {
return this.data[property];
}
else {
return this.myPromise.then(() => {
return this.data[property];
});
}
}
unknownProperty(key) {
return this.#get(key);
}
}
(simplified snippet)
That part works perfectly.
I have problem when brace expension is used in @computed like so :
@computed('myService.{prop1,prop2,prop3}')
get myGetter() {
}
In this case the computed does not works as attended i have to get the “data” propertie of the service like so
@computed('myService.data.{prop1,prop2,prop3}')
Is this a known limitation of unknownProperty ? What happen behind the scene when brace expansion is used ? If i can i 'd like to avoid having to use my service differently in computed
Note : We are running ember 3.24 et slowly migrating to full octane code and more recent ember version , but for now we still have to deal with some computed.
Thanks