Skip to content

Instantly share code, notes, and snippets.

@joeegan
Forked from lukesargeant/application.controller.js
Last active August 23, 2017 18:38
Show Gist options
  • Save joeegan/f0a2b92dcd2f6247ebb52fa25b03179c to your computer and use it in GitHub Desktop.
Save joeegan/f0a2b92dcd2f6247ebb52fa25b03179c to your computer and use it in GitHub Desktop.
watching objects
import Ember from 'ember';
export default Ember.Controller.extend({
appName:'Ember Twiddle'
});
import Ember from 'ember';
export default Ember.Service.extend({
subscriptions: Ember.computed(function() {
return Ember.A();
}),
addSubscription(str) {
this.get('subscriptions').pushObject(Ember.Object.create({ id: str }));
},
init() {
this._super();
let i = 0;
setInterval(() => {
i++;
console.log(this.get('subscriptions'));
this.get('subscriptions').forEach(subscription => {
subscription.setProperties({
BID: i + 0.1,
OFR: i - 0.1,
});
});
}, 1000);
},
});
import Ember from 'ember';
export default Ember.Component.extend({
service: Ember.inject.service('windowDimensions'),
subscriptions: Ember.computed('service.subscriptions.[]', function() {
console.log('hit');
return this.get('service.subscriptions');
}),
streamingDataRows: Ember.computed(function() {
return [];
}),
actions: {
create(str) {
this.get('service').addSubscription(str);
}
}
});
<button {{action 'create' 'foo'}}>Create foo subscription</button>
<button {{action 'create' 'bar'}}>Create bar subscription</button>
{{#each service.subscriptions as |subscription|}}
{{#each-in subscription as |key value|}}
{{key}}: {{value}}
{{/each-in}}
{{/each}}
{
"version": "0.5.3",
"EmberENV": {
"FEATURES": {}
},
"options": {
"enable-testing": false
},
"dependencies": {
"jquery": "https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.js",
"ember": "https://cdnjs.cloudflare.com/ajax/libs/ember.js/2.3.1/ember.debug.js",
"ember-data": "https://cdnjs.cloudflare.com/ajax/libs/ember-data.js/2.3.3/ember-data.js",
"ember-template-compiler": "https://cdnjs.cloudflare.com/ajax/libs/ember.js/2.2.0/ember-template-compiler.js"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment