Skip to content

Instantly share code, notes, and snippets.

@iamdtang
Created September 18, 2017 13:12
Show Gist options
  • Save iamdtang/388048e55a335dafd1bfa421f4128489 to your computer and use it in GitHub Desktop.
Save iamdtang/388048e55a335dafd1bfa421f4128489 to your computer and use it in GitHub Desktop.
checkbox list
import Ember from 'ember';
const { Component, computed } = Ember;
export default Component.extend({
tagName: 'ul',
attributeBindings: ['data-test-hook'],
checkedItemsSet: computed('checkedItems.length', function() {
if (this.get('checkedItems')) {
return new Set(this.get('checkedItems').toArray());
}
return new Set();
}),
actions: {
onCheck(item) {
let checkedItemsSet = this.get('checkedItemsSet');
if (checkedItemsSet.has(item)) {
checkedItemsSet.delete(item);
} else {
checkedItemsSet.add(item);
}
this.get('onChecked')(Array.from(checkedItemsSet));
}
}
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment