Skip to content

Instantly share code, notes, and snippets.

@jelhan
Created July 7, 2018 21:47
Show Gist options
  • Save jelhan/bdc1a8d0967534d2eeebdb5f4d1d7e01 to your computer and use it in GitHub Desktop.
Save jelhan/bdc1a8d0967534d2eeebdb5f4d1d7e01 to your computer and use it in GitHub Desktop.
New Twiddle
import Ember from 'ember';
export default Ember.Component.extend({
resolvedWith: '',
actions: {
save() {
let data = this.getProperties('firstName', 'lastName');
this.get('onSave')(data)
.then((resolvedWith) => {
this.set('resolvedWith', resolvedWith);
});
return false;
}
}
});
import Ember from 'ember';
import { Promise } from 'rsvp';
export default Ember.Controller.extend({
appName: 'Ember Twiddle'
});
import Ember from 'ember';
export default Ember.Route.extend({
actions: {
save(data) {
return new Promise((resolve) => {
resolve(
JSON.stringify(data)
);
});
}
}
});
<h1>closure actions</h1>
{{my-component
onSave=(route-action 'save')
}}
<form onsubmit={{action 'save'}}>
<label>first name</label> {{input value=firstName}}
<label>last name</label> {{input value=lastName}}
<input type="submit">
</form>
<p>Promise has resolved with:</p>
<pre>{{resolvedWith}}</pre>
{
"version": "0.15.0",
"EmberENV": {
"FEATURES": {}
},
"options": {
"use_pods": false,
"enable-testing": false
},
"dependencies": {
"jquery": "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.js",
"ember": "3.2.2",
"ember-template-compiler": "3.2.2",
"ember-testing": "3.2.2"
},
"addons": {
"ember-data": "3.2.0",
"ember-route-action-helper": "2.0.6"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment