Формат даты не обновляется (ГГГГММДД) при присвоении обратно объекту - PullRequest
0 голосов
/ 18 февраля 2019

Я хотел простой формат ГГГГММДД, чтобы я мог отобразить его на угловом интерфейсе.

Здесь, после выполнения манипуляции с объектом даты, я хочу присвоить его обратно столбцу TIMESTAMP в объекте результата.TIMESTAMP устанавливается как объект Date в базе данных (postgres).Столбец TIMESTAMP по-прежнему сохраняет разделитель - при назначении newDatex.

Я даже пытался использовать моменты, но безрезультатно.

Я просмотрел this но это не помогает решить мою проблему.Я не хочу, чтобы формат обновлялся в базе данных.Мне нужно обновить его, чтобы я мог отправить обновленный формат (YYYYMMDD) на мой интерфейс.

app.get('/api/:date', (req, res) => {
    var date = req.params.date;

    Model.findAll({
        where: {
            TIMESTAMP: {
                [Op.eq]: date
            }
        },
        order: [
            ['SYMBOL', 'ASC']
        ]
    }).then( result => {

        if (result != undefined){

            let i = 0;


            let year = new Date(result[i].TIMESTAMP)


            for (i = 0; i < result.length; i++) {
                if(result[i].TIMESTAMP != undefined){
                    let date = year.getDate().toString()
                    let month = (year.getMonth() + 1).toString()
                    let newyear = year.getFullYear().toString();
                    (date.length == 1) && ( date = '0' + date);
                    (month.length == 1) && (month = '0' + month);

                    let newDatex = new String();
                    newDatex = newyear + month + date;
                    console.log('modified date:', newDatex)
                    moment(result[i].TIMESTAMP).format("YYYYMMDD");

                    result[i].TIMESTAMP = new String();
                    result[i].TIMESTAMP = newDatex;

                    console.log('should be removing  "-" but isn\'t: ',result[i].TIMESTAMP)
                }
            }
            res.json(result)

        }
    })

});

1 Ответ

0 голосов
/ 18 февраля 2019

Я ввожу дату в новый конструктор Date () любым способом и отформатирую так

var d = new Date('05 October 2011 14:48 UTC');
var day = d.getUTCDate();
var month = d.getUTCMonth() + 1;
var year = d.getFullYear();

// Check day for length to format
if (day.length < 2) {day = '0' + day};
console.log(`${year}${month}${day}`);

Затем получилось:

enter image description here

Также, надеюсь, вы не приняли ответ в посте, на который ссылались, этот человек изменяет цепочку прототипов встроенного объекта, который является огромным нет-нет.

Дайте мне знать, если это работает для вас.

Также , если ваш тип данных «Post» в Postgres, а не что-то вроде varchar, он может автоматически форматировать запись, когда выВы храните это.Поэтому вам, возможно, придется менять тип данных или переформатировать данные каждый раз, когда вы их извлекаете.

...