Задать вопрос
@hollanditkzn

Почему не преобразуется массив использую array.map?

Использую данный код, но вот данные не преобразуются не пойму почему
Order.find()
        .then(orders => {
            orders = orders.map((order) => {
                if (order.status === 0){
                    order.status = 'Новый';
                }
                order.time = moment(order.time).format('DD MMMM YYYY');
                console.log(order);
                return order;
            });
            res.render('user', {
                username: req.user.username,
                title: 'Главная страница',
                order: orders
            });
        })
        .catch(err => console.log(err));

Получаю вот такие данные, на только один объект выведу
{ _id: 5a0bdde700a4c7168416e8ef,
orderId: 16,
description: 'Тест',
number: 10,
information: '',
file: 'Скриншот 2017-08-21 14.48.41.png',
name: 'Василий',
phone: '79503164233',
email: '',
juid: null,
prepayment: null,
time: 2017-11-21T21:00:00.000Z,
prioity: 0,
__v: 0,
action: true,
createdAt: 2017-11-15T06:25:18.636Z,
status: 0 }

Но получаю также в этом формате 2017-11-21T21:00:00.000Z
На примере я поставил как должно выводить данные https://jsfiddle.net/rusline/gxzngwx6/6/ Но там выходит ошибка и как его исправлять?
  • Вопрос задан
  • 172 просмотра
Подписаться 1 Простой 6 комментариев
Решения вопроса 1
@hollanditkzn Автор вопроса
В монгусе Если хочется простые объекты, то нужно
Order.find().lean().then ...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
keslo
@keslo
У вас данные в поле time в примере в каком формате? Видимо должно быть string?
https://jsfiddle.net/821cuanz/
В этом случае код работает.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы