title: backbone event listener on singleton object
body: <p>I am trying to create a singleton object as a model for a view on backbone, and I want to re-render the view whenever this singleton object is being changed and updated. I am not sure the following code would be the right way of doing it or not</p>
  
  <p><strong>Model</strong></p>
  
  <pre><code>define(function(require) {
       var Singleton = require("modules/Singleton");
       var Singleton = null;
       var SingletonHolder = {
  
          init: function() {
             Singleton = new Singleton();
             return Singleton.fetch();
          },
  
          current: function() {
             return Singleton;
          },
  
          refresh: function() {
             return Singleton.fetch();
          }
       };
  
      return SingletonHolder;
  });
  </code></pre>
  
  <p><strong>Controller</strong></p>
  
  <pre><code>var currentObj = SingletonHolder.current();
  var tempView = new TempView({
              model: currentObj
  }); 
  </code></pre>
  
  <p><strong>View</strong></p>
  
  <pre><code>var TempView = Backbone.View.extend({
      initialize: function() {
           this.listenTo(this.model, "change", this.render);
      }
  
      render: function() {
           ...
      }
  
  });
  </code></pre>
  
  <p>For some reasons it doesn't work. Did i miss anything ? I also tried to call Singleton.refresh which it goes to the server side and fetches the latest data from the database, but it doesn't detect the changes and re-render the view.</p>