}, function(err, doc) { utils.log(err, 'red'); utils.log(err, 'yellow'); res.send({ status: '00000' }); });
router.get('/', function(req, res, next) { if (req.session.user) { utils.log(req.session.user, 'yellow'); } else { utils.log('未登录', 'red'); } var tag = function() { return new Promise(function(resolve, reject) { Article .find(null, 'tag') .sort({ date: -1 }) .limit(10) .exec(function(err, docs) { if (err) { reject(err); } else { resolve(docs); } }); }); }; var count = function() { return new Promise(function(resolve, reject) { Article .count({}, function(err, num) { if (err) { reject(err); } else { resolve(num); } }); }); }; var find = function() { return new Promise(function(resolve, reject) { findArticle(function(err, docs) { if (err) { reject(err); } else { resolve(docs); } }, 10); }); }; var findLast = function() { return new Promise(function(resolve, reject) { Article .find(null, 'title') .sort({ date: -1 }) .limit(5) .exec(function(err, docs) { if (err) { reject(err); } else { resolve(docs); } }); }); }; var result = function() { return Promise.all([ count(), find(), tag(), findLast() ]); }; result() .then(function(data) { //tags var tags = []; data[2].forEach(function(item) { var tag = item.tag || ''; if (tag) { tags.push(tag); } }); tags = tags.join(',').split(','); tags = utils.toDenseArray(tags); tags = utils.delArray(tags); if (req.query.debug === 'true') { res.send(data); } else { res.render('home/index', { title: config.site.name, user: req.session.user, utils: utils, nav: config.nav, data: { user: req.session.user || '', articelCount: data[0], articelList: JSON.parse(JSON.stringify(data[1])), classification: config.classification, lastArticleList: JSON.parse(JSON.stringify(data[3])), tags: tags } }); } }) .catch(function(reason) { utils.log(reason, 'red'); }); });
.catch(function(reason) { utils.log(reason, 'red'); });