Will
Will

Reputation: 5590

Why doesn't this emberjs template update?

I'm learning emberjs and I've done a pretty simple example. The HTML template is:

<script type="text/x-handlebars">
    Hello <b>{{App.appOwner}}</b>
</script>

And then the javascript is:

App = Ember.Application.create({
  appOwner : 'Erik'
});


App.appOwner = 'Tom';

Which does pretty much what you expect. The emberjs.com documentation says templates are auto-updating -- so I added this:

$(document).click(function() {
  console.log('HERE!');
  App.appOwner = 'Alphonse';
});

Which quite unexpectedly failed. I had added the console.log just to make sure the click handler was being called, which it was. Why doesn't it update?

Upvotes: 1

Views: 192

Answers (1)

zerkms
zerkms

Reputation: 254926

You need to use .set() mutator method, because javascript doesn't have facilities to intercept the direct properties changes:

App.set('appOwner', 'Alphonse');

Upvotes: 6

Related Questions