@mayday69

Как передать массив из серверного node js файла в клиентский простой js файл со скриптами?

Имеется серверный node js файл в котором обрабатывается база данных и переносит всю информацию в обьект. Вот так :
файл index.js
function returnOrderArray() {
    var i = 0;
    const promise = new Promise((resolve, reject) => {
        connection.query('SELECT * FROM orders', function(error, results) {
            while (i < results.length) {

                order.id[i] = results[i].id;
                order.wavetype[i] = results[i].wavetype;
                order.color[i] = results[i].color;
                order.thick[i] = results[i].thick;
                order.readydate[i] = results[i].readydate;
                order.createdate[i] = results[i].createdate;
                order.manager[i] = results[i].manager;

                i++;
            }
            resolve(order);
            // console.log(order);


        });
    });
    return promise;
}

При попытке передать объект через module.exports на клиентской части объект не видно
тут происходит экспорт:
файл index.js
app.get('/orderlist', checkUserSession, async function(request, response) {
    returnOrderArray().catch(error => console.log(error)).then(() => console.log(order), module.exports.order = order,
        response.render("orderlist.ejs", { username: request.session.username }));
});


а здесь импорт :
файл orderlist.js
var ind = require('../../index')


function asd() {
    alert(ind.order);
}


на всякий случай расположение файлов:

5f3e5a243732e477229366.png

В чем может быть проблема и как лучше всего будет передать объект order в другой js?
  • Вопрос задан
  • 413 просмотров
Пригласить эксперта
Ответы на вопрос 2
@echo_vladik
я не сильно шарю но вроде через socket.io можно передавать объекты на клиент, причем динамично через подписки на события с сервера на клиент и наоборот, а функцию я бы назвал getOrders(filter={бубубу, бубубу}) например
Ответ написан
Комментировать
@t800zippygod
Подождите, вы совершаете экспорт из серверного скрипта в клиентский??? Боюсь, так работать не будет.
Данные между сервером и клиентом надо передавать через HTTP транспорт
Ответ написан
Ваш ответ на вопрос

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

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