Skip to content

Instantly share code, notes, and snippets.

import Controller from '@ember/controller';
export default class ApplicationController extends Controller {
appName = 'Ember Twiddle';
}
import Controller from '@ember/controller';
import { tracked } from '@glimmer/tracking';
export default class ApplicationController extends Controller {
@tracked fooObj;
@tracked fooArr;
}
import Controller from '@ember/controller';
export default class ApplicationController extends Controller {
appName = 'Ember Twiddle';
}
@amk221
amk221 / components.bar\.js
Last active July 5, 2023 18:49
Composition
import Component from '@glimmer/component';
export default class extends Component {
lastName = 'Smith'
}
@amk221
amk221 / components.bar\.js
Last active July 5, 2023 18:49
Inheritance
import Component from '@glimmer/component';
export default class extends Component {
lastName = 'Smith'
}
import Controller from '@ember/controller';
import userUtils from '../user/utils';
export default class ApplicationController extends Controller {
get users() {
return userUtils.sort(this.model)
}
}
@amk221
amk221 / components.my-component\.js
Last active June 30, 2023 18:27
didUpdateAttrs replacement
import Component from '@glimmer/component';
import { tracked } from '@glimmer/tracking';
import { action } from '@ember/object';
export default class extends Component {
@tracked value;
constructor() {
super(...arguments);
this.value = this.args.value;
@amk221
amk221 / components.my-component\.js
Last active June 30, 2023 09:38
assert.expect & testing async code
import Component from '@glimmer/component';
export default class extends Component {
}
@amk221
amk221 / adapters.foo\.js
Last active June 22, 2023 10:50
deleted/destroyed
import RESTAdapter from 'ember-data/adapters/rest';
import { resolve } from 'rsvp';
export default class FooAdapter extends RESTAdapter {
findRecord() {
console.log('finding record')
return resolve({
foo: {
id: 1,
@amk221
amk221 / adapters.my-model\.js
Last active June 1, 2023 16:35
prototype pollution
import RESTAdapter from 'ember-data/adapters/rest';
export default class extends RESTAdapter {
ajax(path, method, options) {
return {
myModels: [{
id: 1,
name: 'Model 1'
}]
};