Skip to content

Instantly share code, notes, and snippets.

@chancancode
Last active January 8, 2018 15:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save chancancode/7aded3d76fcc04867b426bf05f641388 to your computer and use it in GitHub Desktop.
Save chancancode/7aded3d76fcc04867b426bf05f641388 to your computer and use it in GitHub Desktop.
New Twiddle
import Ember from 'ember';
const { computed } = Ember;
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
firstName: 'Godfrey',
lastName: 'Chan',
fullName: computed('firstName', 'lastName', function() {
let { firstName, lastName } = this;
return `${firstName} ${lastName}`;
}),
preferFirstName: true,
preferredName: computed('firstName', function() {
return this.firstName;
}),
displayName: computed('preferFirstName', 'preferredName', 'firstName', function() {
return this.preferFirstName ? this.firstName : this.preferredName;
})
});
<h1>Welcome to {{appName}}</h1>
<p><label>First Name: {{input value=firstName}}</label></p>
<p><label>Last Name: {{input value=lastName}}</label></p>
<p>Full Name: {{fullName}}</p>
<hr>
<p><label>{{input type="checkbox" checked=preferFirstName}} You may call me {{firstName}}</label></p>
{{#unless preferFirstName}}
<p><label>Preferred Name: {{input value=preferredName}}</label></p>
{{/unless}}
<hr>
<p><strong>Okay, we will call you {{displayName}}</strong></p>
{
"version": "0.12.1",
"EmberENV": {
"FEATURES": {
"ember-metal-es5-getters": true
}
},
"options": {
"use_pods": false,
"enable-testing": false
},
"dependencies": {
"jquery": "https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.js",
"ember": "canary",
"ember-template-compiler": "canary",
"ember-testing": "canary"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment