onFetch: function (payload) { API.get('/api/users/' + payload.userId + '/followers', null, function (err, res) { if (err) { return console.log(err); } this.users = res; this.emit('change'); }.bind(this)); },
this.search = _.debounce(function (query) { this.setState({ loading: true }); API.get('/api/tracks', { query: query }, function (err, res) { if (err) { return console.log(err); } this.setState({ loading: false, results: res, selectionIndex: 0 }); }.bind(this)); }, 300);
fetchPostsThen: function (context, pageNum, cb, force) { if ((!this.fetchingPosts && this.hasMorePosts) || force) { this.fetchingPosts = true; API.get(this.pages[context.page].url(context.pageOpts), {p: pageNum}, function (err, res) { if (err) { console.error(err); } else { if (!res || res.length < 25) { this.hasMorePosts = false; } res = res || []; this.fetchingPosts = false; cb.call(this, res); } }.bind(this)); } },