Skip to content

Instantly share code, notes, and snippets.

@cassiozen
Created April 29, 2015 10:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save cassiozen/6ed695e2bcc03e769918 to your computer and use it in GitHub Desktop.
Save cassiozen/6ed695e2bcc03e769918 to your computer and use it in GitHub Desktop.
var events = new EventEmitter();
var CHANGE_EVENT = 'CHANGE';
var todos = {};
var TodoStore = {
addChangeListener: function(callback) {
events.addListener(CHANGE_EVENT, callback);
},
removeChangeListener: function(callback) {
events.removeListener(CHANGE_EVENT, callback);
}
/*
* In this case, do not provide emitChange as
* a publicly available method in your store
emitChange: function() {
this.emit(StoreConstants.CHANGE);
},
*/
};
TodoStore.dispatchToken = AppDispatcher.register((action) => {
if (action.type === ActionTypes.TODOS_LOADED) {
todos = action.todos
events.emit(CHANGE_EVENT);
}
});
module.exports = TodoStore;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment