src/js/mixins/DataMixins.js
function(store) {
        return {
            /**
             * Adds the listeners required when requesting data from the server.
             */
            componentDidMount: function() {
                store.on('change:' + this.props.componentId, this.onDataReceived);
                store.on('fail:' + this.props.componentId, this.onError);
            },

            /**
             * Removes the listeners required when requesting data from the server.
             */
            componentWillUnmount: function() {
                store.removeListener('change:' + this.props.componentId, this.onDataReceived);
                store.removeListener('fail:' + this.props.componentId, this.onError);
            }
        };
    }
function(store) {
        return {
            /**
             * Adds the listeners required when requesting data from the server.
             */
            componentDidMount: function() {
                store.on('change:' + this.props.componentId, this.onDataReceived);
                store.on('fail:' + this.props.componentId, this.onError);
            },

            /**
             * Removes the listeners required when requesting data from the server.
             */
            componentWillUnmount: function() {
                store.removeListener('change:' + this.props.componentId, this.onDataReceived);
                store.removeListener('fail:' + this.props.componentId, this.onError);
            }
        };
    }
Used to add and remove the listeners required when requesting data from the server.
@param {object} store - The object returned from the store file associated with the component.
@returns {{componentDidMount: componentDidMount, componentWillUnmount: componentWillUnmount}}  - React lifecycle functions.