Skip to content

Instantly share code, notes, and snippets.

@bendemboski
Created September 21, 2018 05:52
Show Gist options
  • Save bendemboski/c708b3d8f8f0f02f41ad83cb251fc4ef to your computer and use it in GitHub Desktop.
Save bendemboski/c708b3d8f8f0f02f41ad83cb251fc4ef to your computer and use it in GitHub Desktop.
New Twiddle
import Ember from 'ember';
import { inject as service } from '@ember/service';
import { task } from 'ember-concurrency';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
store: service(),
runTask: task(function*() {
this.set('taskResult', '');
let model = this.store.createRecord('my-model');
try {
this.set('taskResult', yield model.task.perform());
} catch (e) {
this.set('taskResult', `ERROR: ${e.toString()}`);
}
})
});
import Model from 'ember-data/model';
import { task } from 'ember-concurrency';
export default Model.extend({
task: task(function*() {
return yield 'task result';
})
});
<button onclick={{action 'runTask'}}>Run task</button>
<br>
Task result: {{taskResult}}
{
"version": "0.15.0",
"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.2.2",
"ember-concurrency": "*",
"ember-template-compiler": "3.2.2",
"ember-testing": "3.2.2"
},
"addons": {
"ember-data": "canary"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment