Skip to content

Instantly share code, notes, and snippets.

@alexlafroscia
Created April 17, 2020 19:47
Show Gist options
  • Save alexlafroscia/44b3949d117c1d4b0cbde87a39b6b29c to your computer and use it in GitHub Desktop.
Save alexlafroscia/44b3949d117c1d4b0cbde87a39b6b29c to your computer and use it in GitHub Desktop.
ember-changeset changes CP bug
import Controller from '@ember/controller';
import { action, computed } from '@ember/object';
import { Changeset } from 'ember-changeset';
class User {
name = '';
}
export default class ApplicationController extends Controller {
appName = 'Ember Twiddle';
constructor() {
super(...arguments);
const user = new User();
user.name = 'Emily';
this.user = user;
this.changeset = new Changeset(user);
}
@computed('changeset.changes')
get changes() {
return this.changeset.changes;
}
@action
setName() {
this.changeset.set('name', 'Alex');
}
}
{{this.user.name}}
<button {{on 'click' this.setName}}>
Change Name
</button>
<br>
<h2>Directly Watching Changes</h2>
<ul>
{{#each this.changeset.changes as |change|}}
<li>change</li>
{{else}}
No Changes
{{/each}}
</ul>
<br>
<h2>Through Computed Property</h2>
<ul>
{{#each this.changes as |change|}}
<li>change</li>
{{else}}
No Changes
{{/each}}
</ul>
{
"version": "0.17.0",
"EmberENV": {
"FEATURES": {},
"_TEMPLATE_ONLY_GLIMMER_COMPONENTS": false,
"_APPLICATION_TEMPLATE_WRAPPER": true,
"_JQUERY_INTEGRATION": true
},
"options": {
"use_pods": false,
"enable-testing": false
},
"dependencies": {
"jquery": "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.js",
"ember": "3.17.0",
"ember-template-compiler": "3.17.0",
"ember-testing": "3.17.0"
},
"addons": {
"@glimmer/component": "1.0.0",
"ember-changeset": "3.2.1"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment