Skip to content

Instantly share code, notes, and snippets.

import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle 123',
foo() {
alert(this.appName);
}
});
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
_foo: 0,
bar: 0,
// foo: Ember.computed({
// get() {
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle'
});
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
init() {
Ember.Object.extend({
foo: Ember.computed(function() {}).readOnly()
}).create({
foo: 'bar'
import Component from '@ember/component';
import { or, readOnly } from '@ember/object/computed';
import { observer } from '@ember/object';
export default Component.extend({
unwrappedApi: or('api.api', 'api'),
foo: readOnly('unwrappedApi.foo'),
bar: readOnly('foo.bar'),
import Ember from 'ember';
export default Ember.Component.extend({
init() {
this._super(...arguments);
this.foo = () => { this.set('bar', 'baz'); }
}
});
@pzuraq
pzuraq / controllers.application.js
Last active May 3, 2018 09:59 — forked from feanor07/controllers.application.js
stackoverflow-question#43119847
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
});
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
items: [{ name: 'foo' }, { name: 'bar' }],
sorter: Ember.computed.sort('items', ['name:asc'])
});
@pzuraq
pzuraq / components.my-component.js
Last active January 28, 2018 23:31
ES Class Demo
import Ember from 'ember';
let FooComponent = Ember.Component.extend({
baz: Ember.computed('foo', function() {
return this.get('foo');
}),
fooObserver: Ember.observer('foo', function() {
this.set('qux', 'quux');
}),
@pzuraq
pzuraq / todos.md
Last active January 18, 2018 19:32
ES Class Todos

Ember ES Class Todos

  • Update constructor to receive arguments directly
    • Implemented in this PR, just needs review and merge
    • Probably could be simplified in Ember 3, we can remove multi-object create
  • Update concatenated and merged properties in RFC
    • Concatenated and merged properties will not be able to work the way they used to.
    • No way to know the value of a field before an instance is created
    • Parent class constructor finishes before child constructor, so no way to get value in makeCtor base constructor
  • Fix native getters/setters (make mandatory setter aware of them)
    • applyMixin , watchKey, and defineProperty erase native getters and setters