Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Split Date w/ Two-Way Computed
import Ember from 'ember';
import moment from 'moment';
export default Ember.Component.extend({
value: Ember.computed('month', 'year', {
get() {
let month = this.get('month') - 1;
let year = this.get('year');
return moment().year(year).month(month);
},
set(_, value) {
let month = value.month() + 1;
let year = value.year();
this.set('month', month);
this.set('year', year);
return moment();
}
})
});
import Ember from 'ember';
import moment from 'moment';
export default Ember.Controller.extend({
init() {
this._super(...arguments);
this.set('date', moment('1970-01-01'));
}
});
<h1>Welcome to {{appName}}</h1>
<br>
<br>
{{outlet}}
<br>
<br>
{{x-year-month value=date}}
<hr>
Moment Value: {{moment-format date 'MM-YYYY'}}
Month: {{input value=month}}
<br>
Year: {{input value=year}}
{
"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",
"ember-moment": "7.0.1",
"ember-input-range": "1.0.0"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment