Skip to content

Instantly share code, notes, and snippets.

@akatov
Created August 3, 2017 14:03
Show Gist options
  • Save akatov/ea2df323097c596e0ced64f3381f97b9 to your computer and use it in GitHub Desktop.
Save akatov/ea2df323097c596e0ced64f3381f97b9 to your computer and use it in GitHub Desktop.
experiment-computed-properties
import Ember from 'ember';
const { computed } = Ember;
let x = 0;
export default Ember.Controller.extend({
// x: computed(() => (Ember.Object.create({ a: [], b: []}))),
x: computed(() => ({ a: [], b: []})),
y: 'hi',
hello: computed('y', 'x.a.[]', 'x.b.[]', function() {
console.log('hi')
console.log(this.get('x.a'));
return this.get('y') + this.get('x.a.lastObject') + this.get('x.b.lastObject');
}),
actions: {
do() {
this.get('x.a').pushObject(x++);
this.get('x.b').pushObject(x++);
},
}
});
{{hello}}
<button onclick={{action "do"}}>do</button>
{
"version": "0.12.1",
"EmberENV": {
"FEATURES": {}
},
"options": {
"use_pods": false,
"enable-testing": false
},
"dependencies": {
"jquery": "https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.js",
"ember": "2.12.0",
"ember-template-compiler": "2.12.0",
"ember-testing": "2.12.0"
},
"addons": {
"ember-data": "2.12.1"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment