Sails.js
- 1 ответ
- 0 вопросов
1
Вклад в тег
index: function (req, res, next) {
var Promise = require("bluebird");
var countAllPosts = Post.count()
.then(function countResult (count) {
// Сторонние действия, итерации, и т.д...
return count; // Обязательно - так мы возвращаем объект promise
});
var posts = Post.find()
.sort({
"id": "desc"
})
.paginate({
page: req.param("page", 1),
limit: 5
})
.then(function (posts) {
return posts; // также возвращаем promise объект
});
Promise
// Метод объеденения нескольких промисов.
.join(countAllPosts, posts, function (count, posts) {
res.view({
countPosts: countPosts,
posts: posts
});
})
// Независимая обработка ошибок, вне основной логики: cb(err, data) не лучший способ работы с данными в nodejs.
.catch(function (errors) {
res.serverError(); // res.send(500) не родной метод sails и его лучше не использовать, имхо
})
}