Skip to content

Instantly share code, notes, and snippets.

View mixonic's full-sized avatar

Matthew Beale mixonic

View GitHub Profile
import Ember from 'ember';
export default Ember.Controller.extend({
firstAppName: 'Ember',
lastAppName: 'Twiddle'
});
@mixonic
mixonic / controllers.application.js
Last active December 6, 2016 03:50
Action Stuff
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
someObject: {
toString: () => 'someObject',
bar() { window.alert(this); }
},
foo() {
window.alert(this);
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
val: 'someVal',
actions: {
log(v) {
console.log(v);
}
}
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
});
  • Start Date: 2016-06-11
  • RFC PR: (leave this empty)
  • Ember Issue: (leave this empty)

Summary

With the goal of making significant performance improvements and of adding public API to support use cases long-served by a private API, a new API of factoryFor will be added to ApplicationInstance instances.

import Ember from 'ember';
Ember.STRINGS = {
'Ember Twiddle': 'Ember Twiddle via strings (%@)'
};
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
actions: {
toggle() {
@mixonic
mixonic / vcr_proxy.js
Last active January 1, 2016 00:59
Ember.js VCRProxy
// Record changes to an ObjectProxy and allow them to be stepped through
// or jumped to.
//
// For an example, see http://emberjs.jsbin.com/EJEcoxO/12/edit?html,js,output
//
// There is a bower/npm installable version of this library on GitHub:
// https://github.com/mixonic/ember-vcr-proxy
//
(function (global) {
test("it slices the array", function() {
expect(7);
deepEqual(get(obj, 'sliced'), [1, 2]);
Ember.run(function() {
// [0, 1, 2, 3, 4, 5]
obj.get('array').insertAt(0, 0);
});
// Ember.computed.slice managing the array
Ember.computed.slice = function(dependentKey, begin, end) {
var size = end - begin,
slicedIndex;
var options = {
addedItem: function(array, item, changeMeta, instanceMeta) {
slicedIndex = changeMeta.index - begin;
if (slicedIndex >= 0 && slicedIndex < size) {
if (slicedIndex >= array.length) {
array.push(item);