Skip to content

Instantly share code, notes, and snippets.

@HeroicEric
HeroicEric / controllers.application\.js
Last active June 15, 2020 19:46
Thread injection chart
import Controller from '@ember/controller';
export default class ApplicationController extends Controller {
appName = 'Ember Twiddle';
}
import Component from '@glimmer/component';
export default class extends Component {
willDestroy() {
// this.args.person here is missing when it is called as a result of transitioning to another route
console.log({ person: this.args.person });
}
}
@HeroicEric
HeroicEric / templates.application\.hbs
Last active April 22, 2020 23:09
Splattributes type bug
<h1>Splattributes bug</h1>
<p>The `type` attribute for this input should be "number".</p>
<p>The `type` attribute for this button should be "submit".</p>
<form>
<MyInput type="number" />
<MyButton type="submit">
Foo button
import Controller from '@ember/controller';
export default class ApplicationController extends Controller {
appName = 'Ember Twiddle';
}
import Controller from '@ember/controller';
export default class ApplicationController extends Controller {
appName = 'Ember Twiddle';
}
import Ember from 'ember';
const countries = [
{ name: 'Canada', flag: 'CA' },
{ name: 'France', flag: 'FR' },
{ name: 'Greece', flag: 'GR' },
{ name: 'Iceland', flag: 'IS' },
{ name: 'Spain', flag: 'ES' },
{ name: 'United Kingdom', flag: 'GB' },
{ name: 'United States', flag: 'US' },
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle'
});
import Ember from 'ember';
import { A } from '@ember/array';
import EmberObject, { computed } from '@ember/object';
export default Ember.Controller.extend({
displayData: Ember.computed('data.@each.priority', function() {
return this.data.sort((a, b) => a.priority - b.priority);
}),
data: A([
import Ember from 'ember';
import { get, set } from '@ember/object';
export default Ember.Component.extend({
perPage: 2,
pageNumber: 1,
paginatedData: Ember.computed('data.[]', 'perPage', 'pageNumber', function() {
let { data, perPage, pageNumber } = this.getProperties('data', 'perPage', 'pageNumber');
import Ember from 'ember';
import { inject as service } from '@ember/service';
export default Ember.Component.extend({
myService: service()
});