Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
New Twiddle
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
bar: {
name: 'cached'
},
proxy: Ember.computed('bar', function () {
const proxy = new Ember.ObjectProxy({
content: {
name: 'persisted',
nested: {
text: 'nested-persisted'
}
}
})
proxy.setProperties(this.get('bar'))
return proxy
}),
actions: {
on () {
this.set('bar', {
name: 'cached',
nested: {
text: 'nested-cached'
},
deeply: {
deeply: {
deeply: {
nested: {
value: 'so-deep-cached'
}
}
}
},
some: {
array: [1, 2, 3]
}
})
},
off () {
this.set('bar', {})
}
}
});
<h1>Welcome to {{appName}}</h1>
<br>
<br>
{{proxy.name}}
<br>
{{proxy.nested.text}}
<br>
{{proxy.deeply.deeply.deeply.nested.value}}
<br>
{{#each proxy.some.array as |value|}}
{{value}}
{{/each}}
<br>
<button {{action 'on'}}>On</button>
<button {{action 'off'}}>Off</button>
{{outlet}}
<br>
<br>
{
"version": "0.13.1",
"EmberENV": {
"FEATURES": {}
},
"options": {
"use_pods": false,
"enable-testing": false
},
"dependencies": {
"jquery": "https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.js",
"ember": "2.16.2",
"ember-template-compiler": "2.16.2",
"ember-testing": "2.16.2"
},
"addons": {
"ember-data": "2.16.3"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment