Skip to content

Instantly share code, notes, and snippets.

import Evented from '@ember/object/evented';
import Component from '@ember/component';
import $ from 'jquery';
import { task, timeout, waitForEvent, waitForProperty } from 'ember-concurrency';
export default class EventsExampleComponent extends Component.extend(Evented) {
// BEGIN-SNIPPET waitForEvent
domEvent = null;
@task *domEventLoop() {
while(true) {
@machty
machty / controllers.application.js
Created January 30, 2018 19:28 — forked from danwenzel/controllers.application.js
ember-concurrency issue
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle'
});
import Ember from 'ember';
const { computed } = Ember;
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
firstName: 'Godfrey',
lastName: 'Chan',
fullName: computed('firstName', 'lastName', function() {
@machty
machty / 0_reuse_code.js
Created May 2, 2017 11:03
Here are some things you can do with Gists in GistBox.
// Use Gists to store code you would like to remember later on
console.log(window); // log the "window" object to the console
@machty
machty / controllers.application.js
Last active February 10, 2017 17:19
New Twiddle
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle'
});
@machty
machty / controllers.application.js
Last active December 13, 2016 17:49 — forked from sukima/controllers.application.js
e-c acceptance testing timers
import Ember from 'ember';
import { task, timeout } from 'ember-concurrency';
export default Ember.Controller.extend({
lockoutTimer: task(function * () {
while(true) {
yield timeout(10000000);
}
}).on('init')
});
@machty
machty / components.delete-blog.js
Created November 21, 2016 11:31 — forked from jamesarosen/components.delete-blog.js
passing-deferreds-down
import Ember from 'ember';
export default Ember.Component.extend({
classNames: [ 'delete-blog' ],
sudoDeferred: null,
isDone: false,
isWorking: false,
message: null,
import Ember from 'ember';
import { task, timeout, all } from 'ember-concurrency';
const { Controller, get, set } = Ember;
const TaskTracker = Ember.ObjectProxy.extend({
task: null,
error: null
});
FooController = Em.Controller.extend({
queryParamBindings: ['bar'], // maps to foo[bar]
bar: 'baz',
widgets: Ember.computed.sort('content', 'bar')
});
FooController = Em.Controller.extend({
queryParamBindings: ['bar:lalal'], // maps to lalal
bar: 'baz',