Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
New Twiddle
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
checkboxes: Ember.computed(function() {
return Array.from({length: 4}, (x, i) => {
return {
index: i,
checked: i >= 2
};
});
}),
checkboxesAsJson: Ember.computed('checkboxes.@each.checked', function() {
return JSON.stringify(this.get('checkboxes'), null, 2);
}),
actions: {
check(i) {
console.log("HEY");
const k = `checkboxes.${i}.checked`;
this.set(k, !this.get(k));
}
}
});
<h1>Welcome to {{appName}}</h1>
<br>
<br>
{{#each checkboxes as |check|}}
<div>
<label>
<input
type="checkbox"
checked={{check.checked}}
onclick={{action "check" check.index}}
>
Item {{check.index}}
</label>
</div>
{{/each}}
<pre>{{checkboxesAsJson}}</pre>
{{outlet}}
<br>
<br>
{
"version": "0.11.0",
"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.10.2",
"ember-data": "2.11.0",
"ember-template-compiler": "2.10.2",
"ember-testing": "2.10.2"
},
"addons": {}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment