Skip to content

Instantly share code, notes, and snippets.

@raido
Last active September 18, 2015 08:07
Show Gist options
  • Save raido/f5947a20bb54c59dbcc4 to your computer and use it in GitHub Desktop.
Save raido/f5947a20bb54c59dbcc4 to your computer and use it in GitHub Desktop.
New Twiddle
import Ember from 'ember';
const { computed } = Ember;
const { alias } = computed;
export default Ember.Controller.extend({
appName:'Ember Twiddle',
computedSomeProp: computed('my-mouse-response', function() {
let content = this.get('my-mouse-response');
if (content == 'Mouse entered') {
return "Oh you did not";
} else {
return "Wait what, you left"
}
}),
response: alias('my-mouse-response'),
actions: {
mouseDidEnter(content) {
this.set('my-mouse-response', content);
},
mouseDidLeave(content) {
this.set('my-mouse-response', content);
}
}
});
<h1>Welcome to {{appName}}</h1>
<br>
<br>
{{outlet}}
<br>
<br>
{{mouse-component onWhatEverEnter='mouseDidEnter' onWhatEverLeave='mouseDidLeave'}}
<br>
<br>
This is from controller: <strong>{{my-mouse-response}}</strong>
<br>
<br>
Alias for response: {{response}}
<br>
<br>
Some CP on controller: {{computedSomeProp}}
import Ember from 'ember';
export default Ember.Component.extend({
mouseEnter() {
let content = "Mouse entered";
this.set("content", content);
this.sendAction('onWhatEverEnter', content);
},
mouseLeave() {
let content = "Mouse left";
this.set("content", content);
this.sendAction('onWhatEverLeave', content);
}
});
<div style="width: 200px; height: 200px; background-color: #ccc;">
{{content}}
</div>
{
"version": "0.4.10",
"dependencies": {
"jquery": "https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.js",
"ember": "https://cdnjs.cloudflare.com/ajax/libs/ember.js/1.13.9/ember.debug.js",
"ember-data": "https://cdnjs.cloudflare.com/ajax/libs/ember-data.js/1.13.11/ember-data.js",
"ember-template-compiler": "https://cdnjs.cloudflare.com/ajax/libs/ember.js/1.13.9/ember-template-compiler.js"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment