Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sglanzer-deprecated/09e3cf0c39ea8d86422b87b1db020e67 to your computer and use it in GitHub Desktop.
Save sglanzer-deprecated/09e3cf0c39ea8d86422b87b1db020e67 to your computer and use it in GitHub Desktop.
New Twiddle
import Ember from 'ember';
export default Ember.Component.extend({
class: 'some-filter',
classNameBindings: ['selected'],
selected: Ember.computed('selectedFilter', function () {
const label = this.get('label')
const selectedFilter = this.get('selectedFilter')
return label === selectedFilter
}),
click () {
this.onSelect(this.get('label'))
}
});
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
controllerSelectedFilter: 'B',
content: Ember.computed('controllerSelectedFilter', function () {
switch (this.get('controllerSelectedFilter')) {
case 'A': return 'is for Apple'
case 'B': return 'is for Banana'
case 'C': return 'is for Carrot'
}
}),
actions: {
select (label) {
this.set('controllerSelectedFilter', label)
}
}
});
import Ember from 'ember';
export default Ember.Route.extend({
});
import Ember from 'ember';
export default Ember.Route.extend({
});
import Ember from 'ember';
export default Ember.Route.extend({
});
body {
margin: 12px 16px;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
font-size: 12pt;
}
.selected {
border-bottom: 2px solid green;
}
<h1>Welcome to {{appName}}</h1>
<br>
<br>
<div>
<span>
{{some-filter label='A' selectedFilter=controllerSelectedFilter onSelect=(action 'select')}}
{{some-filter label='B' selectedFilter=controllerSelectedFilter onSelect=(action 'select')}}
{{some-filter label='C' selectedFilter=controllerSelectedFilter onSelect=(action 'select')}}
</span>
<span>
{{content}}
</span>
</div>
<br>
<br>
{
"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