【发布时间】:2022-01-16 23:10:06
【问题描述】:
我创建了一个 HTML 表单,它接收用户数据并使用 exceljs 和其他一些库将这些数据存储到一个 excel 电子表格中。我的这部分代码工作得很好。但是,当我刷新服务器时,之前存储在 excel 文件中的数据被删除了。
我相信原因是我无法保存 excel 工作簿....但是当我搜索一些代码来实现这一点并执行它时...代码不起作用。
以下是将用户数据收集到 excel 工作表中的代码:
//importing necessary libraries
const express = require("express");
const morgan = require("morgan");
const Prohairesis = require("prohairesis");
const bodyParser = require("body-parser");
const Excel = require("exceljs");
const app = express();
const port = process.env.PORT || 8081;
var info = []
app
.use(express.static('public'))
.use(morgan('dev'))
.use(bodyParser.urlencoded({extended: false}))
.use(bodyParser.json())
.post('/api/user', (req, res) => {
res.json(req.body);
//collecting user data into a javascript string
const user = req.body;
const ud = JSON.stringify(user);
const user_data = JSON.parse(ud);
console.log(user_data);
const user_li = [user_data.first, user_data.email, user_data.stdid, user_data.pwd, user_data.cpwd];
console.log(user_li);
//some simple validation
for (i in user_li)
{
if (user_data.pwd != user_data.cpwd)
{
console.log("**Password does not match**");
break;
}
if (user_data.pwd == user_data.cpwd)
{
info.push(user_li);
console.log(info);
//append row to excel worksheet
const workbook = new Excel.Workbook();
const worksheet = workbook.addWorksheet('Main Db');
worksheet.addRows(info);
workbook.xlsx.writeFile("Login-Db.xlsx")
console.log('Row has been appended');
break;
}
}
})
.listen(port, () => console.log('Server listening on port ${port}'));
【问题讨论】:
标签: javascript excel server exceljs