[英]how to pass a value from one javascript file into another javascript file
[英]How to pass object from one file to another in javascript?
我有节点js服务器文件(index.js)和客户端文件(orderlist.js)在index.js中我得到promise object,就像那样
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;
}
然后我想将它传递给其他 js 文件。 我试图用 module.exports 做到这一点
app.get('/orderlist', checkUserSession, async function(request, response) {
returnOrderArray().catch(error => console.log(error)).then((() => {
module.exports.order = order;
response.render("orderlist.ejs", { username: request.session.username });
})).catch(error => console.log(error));
});
然后将其导入 orderlist.js
var ind = require('../../index')
function asd() {
alert(ind.order);
}
但它似乎不起作用。
我做错了什么,将对象传递给js中的其他文件的最佳方法是什么?
哦,还有文件架构
您需要像这样export
模块: module.exports = returnOrderArray
尝试这个,
orderlist.js
const returnOrderArray = () => {...some code..}
module.exports = returnOrderArray
index.js
const returnOrderArray = require('./path/to/orderlist.js')
const run = async() => {
const orderlist = await returnOrderArray() // use await or then as you prefer
}
run()
如果好奇, 请使用 async_await链接!
希望这会奏效:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.