Skip to content

Instantly share code, notes, and snippets.

View magistrula's full-sized avatar

Anna Andresian magistrula

View GitHub Profile
import Ember from 'ember';
export default Ember.Controller.extend({
isShowingOverview: false,
actions: {
toggleOverviewVisibility() {
this.toggleProperty('isShowingOverview');
}
}
@magistrula
magistrula / components.my-container.js
Last active September 14, 2016 16:40
Wrapper & Container Component Testing
import Ember from 'ember';
export default Ember.Component.extend({
// required params
person: null,
actions: {
onSnooze() {
this.set('person.isAwake', false);
},
@magistrula
magistrula / conditional-statements.js
Created May 23, 2017 18:52
One-line vs Multi-line conditional statements
// one-line, with meaningful logic
function showAlert(text) {
if (!text) console.error('You didn't enter any text!);
alert(text);
}
// one-line, with `return`
function showAlert(text) {
if (!text) return;
alert(text);
// Page Object Helper.
// See http://ember-cli-page-object.js.org/docs/v1.8.x/components#custom-helper
import Ember from 'ember';
import { findElementWithAssert } from 'ember-cli-page-object';
function dynamicTriggerable(eventName, selector, options = {}) {
return {
isDescriptor: true,
@magistrula
magistrula / controllers.application.js
Last active June 21, 2017 19:11
ember-promise-helpers-test
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
store: Ember.inject.service(),
init() {
this._super(...arguments);
const foo = this.get('store').createRecord('foo', {
id: 'foo-id'
@magistrula
magistrula / page.js
Created November 6, 2017 17:54
ember-cli-page-object `getter` macro
import {
create,
hasClass,
isVisible
} from 'ember-cli-page-object';
import { getter } from 'ember-cli-page-object/macros';
// the old way
const page = create({
foo: isVisible('button'),
@magistrula
magistrula / controllers.application.js
Last active January 31, 2018 17:23
Student Grouper
import Ember from 'ember';
// Computed Properties: https://emberjs.com/api/ember/2.15/namespaces/Ember.computed
export default Ember.Controller.extend({
allStudents: Ember.computed.reads('model')
});
@magistrula
magistrula / components.my-component.js
Last active May 4, 2018 22:44
Component White Space
import Ember from 'ember';
export default Ember.Component.extend({
classNames: ['MyComponent']
});
@magistrula
magistrula / controllers.application.js
Last active May 4, 2018 23:50
Optional Action with isDisabled
import Ember from 'ember';
export default Ember.Controller.extend({
isDisabled: false,
actions: {
foo() {
alert('Foo!');
}
}
@magistrula
magistrula / components.my-component.js
Last active June 15, 2018 04:38
Ember Initial Values
import Ember from 'ember';
import withInitialValues from 'app/utils/with-initial-values';
// With the Safe code commented in,
// clicking on the list labeled "Instance 1" or "Instance 2"
// will only result in a change to the clicked list.
//
// With the Unsafe code commented in,
// clicking on the list labeled "Instance 1" or "Instance 2"