Skip to content

Instantly share code, notes, and snippets.

@maxfierke
Created August 8, 2019 04:20
Show Gist options
  • Save maxfierke/576423fc578d8023b943ccf1c28bc9df to your computer and use it in GitHub Desktop.
Save maxfierke/576423fc578d8023b943ccf1c28bc9df to your computer and use it in GitHub Desktop.
Importable Tasks example
import Ember from 'ember';
import myTask from '../my-task';
export default Ember.Component.extend({
myTask
});
import Ember from 'ember';
import myTask from '../my-task';
export default Ember.Component.extend({
myTask
});
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle'
});
import { task, timeout } from 'ember-concurrency';
export default task(function*() {
yield timeout(1000);
return "hello";
}).drop();
<p>Task One</p>
{{uses-task-one}}
<p>Task Two</p>
{{uses-task-two}}
<button type="button" onClick={{perform myTask}} disabled={{myTask.isRunning}}>
Task One
</button>
performCount = {{myTask.performCount}}
isRunning = {{myTask.isRunning}}
<button type="button" onClick={{perform myTask}} disabled={{myTask.isRunning}}>
Task Two
</button>
performCount = {{myTask.performCount}}
isRunning = {{myTask.isRunning}}
{
"version": "0.15.1",
"EmberENV": {
"FEATURES": {}
},
"options": {
"use_pods": false,
"enable-testing": false
},
"dependencies": {
"jquery": "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.js",
"ember": "3.4.3",
"ember-template-compiler": "3.4.3",
"ember-testing": "3.4.3"
},
"addons": {
"ember-data": "3.4.2",
"ember-concurrency": "1.0.0"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment