Skip to content

Instantly share code, notes, and snippets.

View alexander-alvarez's full-sized avatar

Alex Alvarez alexander-alvarez

View GitHub Profile
@alexander-alvarez
alexander-alvarez / components.my-component.js
Created June 22, 2016 14:18
KVO not triggering didReceiveAttrs
import Ember from 'ember';
export default Ember.Component.extend({
numTimesCalled: 0,
didReceiveAttrs(){
this.incrementProperty('numTimesCalled');
}
});
@alexander-alvarez
alexander-alvarez / components.my-component.js
Created July 20, 2016 22:09
ClassNames appends classes to list
import Ember from 'ember';
export default Ember.Component.extend({
classNames: 'class-one class-two'
});
@alexander-alvarez
alexander-alvarez / controllers.application.js
Created July 28, 2016 23:12
Ember Data HasRelationship
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
store: Ember.inject.service('store'),
init(){
this._super(...arguments);
const stuff = this.get('store').createRecord('model-a');
this.set('numberOfRelationships', stuff.get('cars.length'));
}
import Ember from 'ember';
const {Object: EmObject} = Ember;
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
stuff: EmObject.create({
'something' : [1,2,3]
})
});
import Ember from 'ember';
export default Ember.Component.extend({
text: 'nothing',
testFunction(){
this.set('text', 'here')
},
actions: {
clickMe(){
this.testFunction();
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
queryParams: ['param1', 'param2'],
param1: null,
param2: null,
actions:{
change1(){
this.set('param1', 'something');
@alexander-alvarez
alexander-alvarez / components.my-component.js
Last active September 29, 2016 18:32
Shared state across components
import Ember from 'ember';
export default Ember.Component.extend({
someProp: {
},
isFirstComponent: Ember.computed.equal('i', 1),
init(){
this._super(...arguments);
if (this.get('i') === 1) {
// this property will show up on other components
@alexander-alvarez
alexander-alvarez / controllers.application.js
Last active October 27, 2016 20:25
QP Persisting in child Route
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle'
});
@alexander-alvarez
alexander-alvarez / controllers.application.js
Last active November 21, 2016 23:11 — forked from machty/controllers.application.js
ember-concurrency starter
import Ember from 'ember';
import { task, timeout } from 'ember-concurrency';
const {computed} = Ember;
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
myTask: task(function * (string) {
console.log("Waiting... " + string);
@alexander-alvarez
alexander-alvarez / controllers.application.js
Last active December 15, 2016 17:01
Computed Array Properties
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
arr: [],
count: 0,
trues: Ember.computed.filter('arr', function(val){
this.incrementProperty('count');