Skip to content

Instantly share code, notes, and snippets.

@cibernox
Forked from jgwhite/application.controller.js
Created January 8, 2016 17:05
Show Gist options
  • Save cibernox/aaf52d05392182a2a8a0 to your computer and use it in GitHub Desktop.
Save cibernox/aaf52d05392182a2a8a0 to your computer and use it in GitHub Desktop.
Uh Oh
import Ember from 'ember';
const { computed } = Ember;
export default Ember.Controller.extend({
items: [{
name: 'Foo',
state: {
isActive: true
}
}, {
name: 'Bar',
state: {
isActive: true
}
}, {
name: 'Baz',
state: {
isActive: true
}
}],
activeItems: computed('items.@each.state.isActive', function() {
return this.get('items').filter(item => item.state.isActive);
})
});
<p><code>items</code></p>
<ul>
{{#each items as |item|}}
<li>
{{item.name}}
{{input type="checkbox" checked=item.state.isActive}}
</li>
{{/each}}
</ul>
<p><code>activeItems: computed.filterBy('items', 'state.isActive')</code></p>
<ul>
{{#each activeItems as |item|}}
<li>{{item.name}}</li>
{{/each}}
</ul>
{
"version": "0.5.0",
"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.2.0/ember.debug.js",
"ember-data": "https://cdnjs.cloudflare.com/ajax/libs/ember-data.js/2.2.0/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