Closed maxfierke closed 3 years ago
This enables using native classes w/ encapsulated tasks, enabling some cool re-use cases.
e.g.
// app/tasks/mapping export default class FindMeTask { @service geolocation; *perform() { // ... some geolocation magic ... } }
// app/components/local-map-or-whatever.js import FindMeTask from 'my-app/tasks/find-me'; import { task } from 'ember-concurrency'; // ... other imports export default class LocalMapOrWhatever extends GlimmerComponent { @(task(FindMeTask).restartable()) findMe; // ... other stuff }
Closing for now... need to re-think a bit, but might come back to it.
This enables using native classes w/ encapsulated tasks, enabling some cool re-use cases.
e.g.