Notes on Observables.
/**
* A simple Observable class with `map` and `filter` operators.
*
* When instantiated, Observable classes don't do anything until they
* are "subscribed" to.
import Benchmark from 'benchmark'; | |
/** | |
* ------------------------------------------- | |
* Utils | |
* ------------------------------------------- | |
*/ | |
function isNone(obj: unknown): boolean { | |
return obj === null || obj === undefined; | |
} |
/** | |
* ----------------------------------------------------------------- | |
* It works version | |
* ----------------------------------------------------------------- | |
*/ | |
const computerChoiceDisplay = document.getElementById('computer-choice') | |
const playerChoiceDisplay = document.getElementById('player-choice') | |
const resultDisplay = document.getElementById('result') | |
const possibleChoices = document.querySelectorAll('button') | |
let playerChoice |
import Ember from 'ember'; | |
export default Ember.Controller.extend({ | |
buttons: [ | |
{id: 1, text: 'button 1'}, | |
{id: 2, text: 'button 2'}, | |
{id: 3, text: 'button 3'} | |
], | |
}); |
import Ember from 'ember'; | |
export default Ember.Component.extend({ | |
}); |
import Ember from 'ember'; | |
export default Ember.Controller.extend({ | |
canCreate: true, | |
hasMax: true, | |
items: [ | |
{ isEnabled: true, name: 'duplicate'}, | |
{ isEnabled: true, name: 'edit'}, | |
], |
import Ember from 'ember'; | |
export default Ember.Controller.extend({ | |
isValid: false, | |
actions: { | |
submit() { | |
if (this.get('isValid') === false) { | |
this._openFirstPanel(); | |
} |
import Ember from 'ember'; | |
export default Ember.Component.extend({ | |
classNames: ['my-child'], | |
}); |
import Ember from 'ember'; | |
import { task } from 'ember-concurrency'; | |
function fetchReject(type) { | |
return new Promise(function(resolve, reject) { | |
Ember.run.later(() => reject('rejected reason'), 1000); | |
}); | |
} | |
export default Ember.Controller.extend({ |
import Ember from 'ember'; | |
const STATES = ['REJECTED', 'APPROVED', 'REQUESTED']; | |
function getRandomState() { | |
return STATES[Math.floor(Math.random() * STATES.length)]; | |
} | |
export default Ember.Controller.extend({ | |
appName: 'Ember Array CP', |