7. observers

by jonnolen

HTML

<script src="https://github.com/downloads/emberjs/ember.js/ember-0.9.3.js"></script>

JavaScript

//7. observes example.

window.App = Ember.Application.create();

Person = Ember.Object.extend({
  firstName:"",
  lastName:"",
  fullName:function(key,value){
    if (arguments.length === 1){
      return this.get("firstName") + " " + this.get("lastName");
    }
    else{
      var name = value.split(" ");
      this.set("firstName", name[0]);
      this.set("lastName", name[1]);
      return value;
    }
  }.property("firstName","lastName"),
  print:function(){
    alert(this.get("fullName"));
  }
});

App.currentPerson = Person.create({
  firstName:"John",
  lastName:"Booth",
  firstNameChanged:function(sender, key){
    alert("firstName is now: " + sender.get(key));
  }.observes("firstName")
});

App.currentPerson.set("firstName", "Jim");
App.currentPerson.set("firstName", "Jose");