我正在尝试从我的NodeJS后端向JS脚本传递变量,但迄今为止没有成功。 后端代码大致如下:
app.js
app.js
const express = require('express');
const app = express();
const path = require('path');
const bodyParser = require('body-parser');
const cookieParser = require('cookie-parser');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended:true}));
port = process.env.PORT || 3000;
app.listen(port);
app.use(express.static(__dirname + '/'));
app.engine('ejs', require('ejs').renderFile);
app.use(cookieParser());
...
var Orders = (...);
app.get('/', (req,res,next) => {
res.render("main", {Orders: Orders});
});
此处的Orders是一个包含多维MySQL数据的数组。
在前端,我尝试了不同的AJAX调用,但app.js中的变量没有被保存。它们确实通过main.ejs文件传递了。
欢迎提供建议,这是我的第一个NodeJS项目 :)
编辑:以下是与数据库相关的代码(它可以工作):
const mysql = require('mysql');
var con = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '12345678',
database: 'DBName'
});
con.connect(function(err) {
if (err)
{console.log("error");
throw err;}
console.log("Connected!");
});
// Get earlier orders for that store
con.query("SELECT employee_id, datum, time_hour, time_minute, duration, treatment FROM orders WHERE store_id = *store_id*", function (err, result, fields) {
if (err){throw err};
Orders = result;
});